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