0
已解决
吴文光
新手光能
新手光能
题目描述 Description
酷酷准备教他的奶牛们弹一首歌。这首歌由N(1<=n<=50000)个音阶组成,其中第i个音阶要敲击Bi<=10000次。奶牛从第0时刻开始弹,每个时刻敲击一次,因此他从0时刻到B1-1时刻都是敲第1个音阶(共敲了B1次), 然后他从B1时刻到B1+B2-1时刻敲第2个音阶(共敲了B2次),从B1+B2到B1+B2+B3-1时刻敲第3个音阶(共敲了B3次)。
现在有个问题:在时刻T,奶牛敲的是哪个音阶?
输入描述 Input Description
第一行,一个整数N,中间通过空格隔开
接下来N行,每行一个整数B_i
接下来一行,一个整数T
输出描述 Output Description
输出一个整数,表示奶牛应该演奏的音符。
样例输入 Sample Input
3
2
1
3
2
样例输出 Sample Output
2
数据范围及提示 Data Size & Hint
1<=n<= 50000,B_i<=1000,0<=T<=1000
吴文光在2020-06-23 19:25:36追加了内容
#include<iostream>
#include<string>
using namespace std;
bool f[2000010];
int main(){
int n,t;
double a;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a>>t;
for(int j=1;j<=t;j++){
f[int (a*j)]=!f[int(a*j)];
}
}
int i=1;
while(1){
if(f[i]==1){
cout<<i;
break;
}
else
i++;
}
return 0;
}