第一行有個整數T(1 <= T <= 30),代表數據組數。
對于每組數據:第一行包含一個整數m(1 <= m <= 200000)第二行包含m個整數numi(1 <= numi <= 1000000000),表示第i列的學生數量第三行包含一個整數n(1 <= n <= 200000)表示詢問的次數第四行包含n個整數sumi(1 <= sumi <= m)
151 2 3 4 551 2 3 4 5Sample Output
1 3 6 10 15#include "stdio.h"#include "stdlib.h"int main(){ //freopen("/Users/qigelaodadehongxiaodi/Desktop/data1.txt", "r", stdin); //這個不理,是用來方便輸入輸出的東西,利用文本輸入流來讀取數據 //提交代碼的時候記得注銷這條語句 long long m,n,t; long long queue[200005][2],ask[200005];//注意改為long long scanf("%lld",&t); while(t>0){ scanf("%lld",&m); for(long long i=0;i<m;i++){ scanf("%lld",&queue[i][0]); if(i!=0){ queue[i][1]=queue[i-1][1]+queue[i][0];} else{ queue[i][1]=queue[i][0]; } //表示第一列到這個列一共有多少個學生 } scanf("%lld",&n);//詢問n次,即表示要輸出n個數據 for(long long i=0;i<n;i++){ scanf("%lld",&ask[i]); PRintf("%lld",queue[ask[i]-1][1]); if(i!=n-1) printf(" "); } if(t!=1) printf("/n"); t--; } return 0;}
新聞熱點
疑難解答