解题思路:
1.典型的字符串遍历问题,需要找到第一次出现k次的字符,那么可以利用字符串的形式输入进来,然后从下标0开始遍历
2.如果s[i]==s[i+1],说明i的位置的字符和下一位置的字符一样,那么sum++,在这里注意sum初始化为1,因为第一个字符本身也是出现次数,然后判断sum是否等于k值,如果是,输出s[i],结束程序
3.如果是s[i]!=s[i+1],那么sum变为1,继续遍历
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
string a;
cin>>a;//输入字符串
for(int i=0;i<=a.length()-1;i++)//依次遍历每个字符
{
int k=i+1;//k为当前字符后一个位置
int sum=1;//统计相等字符个数的计数器
while(1)
{
if(a[i]==a[k])//如果该字符等于下一个位置的字符
{
k++;//k增加,继续判断
sum++;//计数器增加1
}
else//如果不相等了,退出循环
break;
}
if(sum==n)//如果该字符连续出现的次数为n
{
cout<<a[i];//输出这个字符
return 0;//结束程序
}
}
cout<<"No";//如果找不到这个字符
return 0;//输出NO,结束程序
}