求助
2023-11-19 15:12:11
发布于:江苏
Atc ABC 319 C
12AC 11WA
代码如下:
#include<iostream>
#include<cstring>
using namespace std;
int letters[24];
int main(){
int n,i=0,nownumb,ans=0;
string s;
char now='A';
cin>>n>>s;
s+='A';
while(i<=n){
if(s[i]!=now){
if(now=='A'){
now=s[i]; nownumb=1;
}else if(s[i]=='A'){
int a=now-97;
letters[a]=max(nownumb,letters[a]);
cout<<letters[a]<<endl;
}else{
int a=now-97;
letters[a]=max(nownumb,letters[a]);
cout<<letters[a]<<endl;
now=s[i]; nownumb=1;
}
i++;
}else{
nownumb++; i++;
}
}
for(int i=0;i<24;i++) ans+=letters[i];
cout<<ans;
return 0;
}
全部评论 8
代码:https://www.luogu.com.cn/paste/6ij7jxz6
2023-11-25 来自 四川
0你的比赛场次发错了。。。你的错是letters数组开小了,下面仅仅是<24是不行的,这就导致了样例都没过。如果字符中有一个是'z',你的a就是“25”了,letters装不了,所以把所有的24改成26即可
2023-11-25 来自 四川
0谢谢谢谢
2023-11-25 来自 江苏
0
顶
2023-11-25 来自 江苏
0是不是你的debug没删(((
2023-11-22 来自 四川
0删了debug 还是不行
2023-11-25 来自 江苏
0
这题我估计能解就是不会翻译6
2023-11-22 来自 北京
0顶
2023-11-19 来自 江苏
0顶
2023-11-19 来自 江苏
0顶
2023-11-19 来自 江苏
0
有帮助,赞一个