蜗蜗的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;
}

浙公网安备 33010602011771号