奇怪了,这个代码有时候对,有时候错......
查看原帖
奇怪了,这个代码有时候对,有时候错......
987906
159qqwewe楼主2023/9/29 13:33

这个代码交过去有时候AC,有时候只有60pts,到底出了什么问题???

#include<bits/stdc++.h>
using namespace std;
int main(){
	int a,b,x,y,t,ans;
	cin>>a>>b>>x>>y>>t;
	char c;
	ans=abs(a-x)+abs(b-y);
	int E,W,S,N;
	for(int i=1;i<=t;i++){
		cin>>c;
		if(c=='E')E++;
		if(c=='W')W++;
		if(c=='S')S++;
		if(c=='N')N++;
	}
	if(a>x){
		if(W<abs(a-x)){
	    	printf("-1\n");
	    	return 0;
		}
	}
	if(a<=x){
		if(E<abs(a-x)){
	    	printf("-1\n");
	    	return 0;
		}
	}
	if(b>y){
		if(S<abs(b-y)){
			printf("-1\n");
			return 0;
		}
	}
	if(b<=y){
		if(N<abs(b-y)){
			printf("-1\n");
			return 0;
		}
	}
	printf("%d\n",ans);
	return 0;
}
2023/9/29 13:33
加载中...