時間限制: 2 S 內存限制: 128 MB
題目描述:
某人買了n兜糖果,第i兜有Ai塊糖。此人把所有這些糖果用一個數字標記起來;他這樣標記這些糖,第一袋糖用用數字1到A1,第二袋糖用數字A1+1到A1+A2,如此類推。如果還沒明白看樣例可以更加明確此人的意圖.這個人不想一口氣把這些糖全喫掉,他用記事本隨機記下了這些糖的標號。記事本上寫着他要喫第幾塊糖,然後他就去對找對應糖袋。
輸入:
第一行給出一個數n,表示糖袋數,第二行給出n個數,表示每袋裏有多少個糖。(1<=n<=10^5)第三行給出一個數m,第四行給出m個數表示他要喫的第幾塊糖。每袋糖不超過1000顆(1<=m<=10^5)
輸出:
輸出m個答案,輸出他想喫的糖的編號在第幾袋,每個結果後輸出一個換行。
樣例輸入:
樣例輸出:
Language: C++
#include <iostream>
using namespace std;
int main(){
int n,m;
cin>>n;
int a[n];
int sum=0;
for(int i=0;i<n;i++){
cin>>a[i];
}
cin>>m;
int b[m];
for(int j = 0;j<m;j++){
cin>>b[j];
}
int count = 0;
for(int j = 0;j<m;j++){
for(int i = 0;i<n;i++){
if(b[j]>sum){
sum += a[i];
count++;
}
}cout<<count<<endl;sum=0;count=0;
}
}
——非常歡迎您留言指正及改進。