比赛 期末考试1 评测结果 WWWWWWWWWW
题目名称 Interactive 最终得分 0
用户昵称 exil 运行时间 1.041 s
代码语言 C++ 内存使用 7.49 MiB
提交时间 2026-02-08 11:33:04
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
#define int long long
int a[200005];
int shu[1003];
signed main(){
    freopen("tioj_interactive.in","r",stdin);
    freopen("tioj_interactive.out","w",stdout);
    int n,k,q;
    cin>>n>>k;
    for(int i = 1;i<=n;i++){
        cin>>a[i];
    }
    cin>>q;
    if(n<=1003){
        vector<int> v[2];
        set<int> s[1003];
        for(int i = 1;i<=n;i++){
            int l=0;
            for(int j = i;j<=n;j++){
                l+=a[j];
                if(l>=k){
                    v[0].push_back(i);
                    v[1].push_back(j);
                    //cout<<i<<" "<<j<<endl;
                    
                    break;
                }
            }
        }
        for(int i = 0;i<v[0].size();i++){
            for(int j = v[1][i];j<=n;j++){
                int as=v[0][i],bs=j;
                if(as>bs)swap(as,bs);
                s[bs-as+1].insert(as*1206+bs*76);
                //cout<<as<<" "<<bs<<" "<<s[bs-as+1].size()<<" "<<bs-as+1<<endl;
            }
        }
        for(int i = 0;i<v[1].size();i++){
            for(int j = v[0][i];j>=1;j--){
                int as=j,bs=v[1][i];
                if(as>bs)swap(as,bs);
                s[bs-as+1].insert(as*1206+bs*76);
                //cout<<as<<" "<<bs<<" "<<s[bs-as+1].size()<<" "<<bs-as+1<<endl;
            }
        }
        for(int i = 1;i<=n;i++)shu[i]=shu[i-1]+s[i].size();
        for(int i = 1;i<=q;i++){
            int x;
            cin>>x;
            
            
            cout<<shu[x]<<endl;
        }
        
    }
    return 0;
}