題目
原題鏈接:B. New Year and North Pole
題意
若在北極,則必須往南極移動(dòng),反之往北極移動(dòng),終點(diǎn)必須為北極,起點(diǎn)為北極。
參考了其他作者的代碼,若在北極時(shí)不往南極移動(dòng)或在南極不往北極移動(dòng),不滿足條件。
代碼
#include<bits/stdc++.h>
using namespace std;
int main() {
int n,l,flag=1,sum=0;
char d[6];
scanf("%d",&n);
for(int i=0; i<n; i++) {
scanf("%d %s",&l,d);
if((sum==0 && d[0]!='S') || (sum==20000 && d[0]!='N')){//路程為0,則在北極,必須向南極移動(dòng);為20000則在南極,必須向北極移動(dòng)
flag=0;
}
if(d[0]=='S') {
sum+=l;
} else if(d[0]=='N') {
sum-=l;
}
if(sum<0 || sum>20000){//滿足這個(gè)條件代表已在某極且向該極移動(dòng)
flag=0;
}
}
if(!flag || sum!=0) printf("NO\n");
else printf("YES\n");
return 0;
}