题解 CF1013A 【Piles With Stones】

· · 题解

温馨提示:此题有91个测试点

这个题目意思传达的确实有些糟糕,看起来不太简单,先把题目大意说明一下:

两堆石头,若第二堆石头小于等于第一堆石头,输出“Yes”,若第二堆石头大于第一堆石头,输出“No”。

放眼望去,这分明就是一道水题。但是数据同样很水,它完全不用楼下说的long long

思路:算出第一堆石头,第二堆石头的和后比大小。算和时,不需要重新开一个循环,输入时算出来可以大大减小复杂度。最后养成好习惯,写上return 0;

如果你还想加快速度的话,可以使用scanf代替cin,不过对于一个水题来说大可不必,但在CCF等大型考试中,推荐用scanf,有时数据太大,还得用快读。

代码双手奉上:

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n;
    cin>>n;
    int a[n+1],b[n+1],s1=0,s2=0,i;
    for(i=1;i<=n;i++){
        cin>>a[i];
        s1+=a[i];
    }
    for(i=1;i<=n;i++){
        cin>>b[i];
        s2+=b[i];
    }
    if(s2<=s1)cout<<"Yes";
    else cout<<"No";
    return 0;
}