蜗蜗的CityWalk

题目传送门

整体思路:大模拟

死因:梅毒提

我以为题目想求的是最后答案能有多大。然后所有样例都是最后一次最大,然后就一个都没有查出来。提交,获得0分的好成绩。
其实题目想求的是每走完一步答案最大能是多少

代码如下

#include<bits/stdc++.h>
using namespace std;

int n,k;
char s[1000005];

int main(){
	cin.tie(0)->sync_with_stdio(0);
	cin>>n>>k>>s+1;
	int ans=0,a=0,b=0,c=0,d=0;
	for(int i=1;i<=n;i++){
		if(s[i]=='N') a++;
		if(s[i]=='W') b++;
		if(s[i]=='S') c++;
		if(s[i]=='E') d++;
		int e=min(a,c),f=min(b,d);
		int sum=min(k,e+f);
		ans=max(ans,max(a,c)+max(b,d)+sum-(min(a,c)+min(b,d)-sum));
	}
	cout<<ans<<endl;
}
posted @ 2026-01-24 11:44  zhangruotian_Max  阅读(0)  评论(0)    收藏  举报