专栏文章
题解:SP16248 NCLNE - Clones
SP16248题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mio7oeit
- 此快照首次捕获于
- 2025/12/02 14:42 3 个月前
- 此快照最后确认于
- 2025/12/02 14:42 3 个月前
题目大意
鸣人要进行战斗 秒,第 秒时,有 个鸣人,接下来每一秒,所有鸣人会先进行分身,从原来的 个鸣人变成 个鸣人,分身以后,将会有一部分鸣人前往战斗,战斗的鸣人将不能分身,以此类推。现在给出总战斗时间 与每一秒前往战斗的鸣人数量,问给出的数据是否合法。
题目分析
通过题意可以得出,当 且 ,或者 且 时,数据不合法,上述表达式中 为每一秒部分鸣人去战斗后剩余鸣人数量, 为此时时间(秒)。
此题使用模拟即可。
此题使用模拟即可。
Code&AC记录
CPP#include<bits/stdc++.h>
#define int long long
using namespace std;
int t,n,people,flag,x;
signed main(){
cin>>t;
while(t--){
cin>>n;
people=flag=1;
while(n--){
cin>>x;
if((people-=x)<0)flag=0;
people*=2;
}
if(flag and !people)cout<<"Yes\n";
else cout<<"No\n";
}
return 0;
}
后记
注意第 行的判断语句:
CPPif((people-=x)<0)flag=0;
写代码时千万不要将
people-=x 两边的括号去掉,因为 > 的优先级显然高于 -=。相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...