题目描述
给定一个英文字符串,请写一段代码找出这个字符串中首先出现三次的那个英文字符(需要区分大小写)。
输入描述:
输入数据一个字符串,包括字母,数字等。
输出描述:
输出首先出现三次的那个英文字符
示例1
输入
Have you ever gone shopping and
输出
e
/*
思路:
借助一个map用于记录每一个字符出现的次数,并且是英文字符;
从左到右依次遍历英文字符串,一旦某个英文字符出现三次即为首次出现三次的字符,将其输出。
*/
#include<iostream>
#include<map>
using namespace std;
int main()
{
string s;
map<char,int> temp;
while(getline(cin,s))
{
for(int i=0;i<s.size();i++)
{
if(s[i]>='a'&&s[i]<='z'||s[i]>='A'&&s[i]<='Z')
//if(s[i] != ' ')
{
if(++temp[s[i]] == 3)
{
cout << s[i] << endl;
break;
}
}
}
}
return 0;
}