2186: 字符串中最长的连续出现的字符
内存限制:128 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:4
解决:4
题目描述
求一个字符串中最长的连续出现的字符,输出该字符及其出现次数。
字符串中无空白字符(空格、回车和tab),如果这样的字符不止一个,则输出出现最早的字符。
输入
一行,一个不包含空白字符的字符串,字符串长度小于200。
输出
一行,输出最长的连续出现的字符及其最长的连续出现次数,中间以一个空格分开。
样例输入 复制
aaaaadbbbbbcccccccdddddddddd
样例输出 复制
d 10
提示
#include<bits/stdc++.h>
using namespace std;
int main(){
string s;
char ans1;
int ans2=0,cnt=1;
cin>>s;
s+=" ";
for (int i=1;i<s.length();i++) {
if (s[i]!=s[i-1]) {
if (cnt>ans2) {
ans2=cnt;
ans1=s[i-1];
}
cnt=1;
}else {
cnt++;
}
}
cout<<ans1<<" "<<ans2;
return 0;
}