连续出现的字符
查看提交统计提问
总时间限制: 1000ms 内存限制: 65536kB
描述
给定一个字符串,在字符串中找到第一个连续出现至少k次的字符。
输入
第一行包含一个正整数k,表示至少需要连续出现的次数。1 <= k <= 1000。
第二行包含需要查找的字符串。字符串长度在1到1000之间,且不包含任何空白符。
输出
若存在连续出现至少k次的字符,输出该字符;否则输出No。
样例输入
3
abcccaaab
样例输出
a
#include<cmath>
#include<iomanip>
#include<iostream>
using namespace std;
int main()
{
string s;
int k;
cin>>k;
cin>>s;
int n=1;
int l=s.size();//求得s的长度。
if (k==1)//特殊情况:k=1.
{
cout<<s[0];//输出第一个字符。
return 0;//结束程序。
}
else
for (int i=0;i<l;i++)
{
int j=i;
while (s[j]==s[j+1])//判断连续两个字符是否相等。
{
n++;
if (n==k)//如果满足条件。
{
cout<<s[i];//输出
return 0;//结束程序
}
j++;
}
n=1;
}
printf("No");//未找到,则输出No。
return 0;
}