题意:给定一个字符换,给定surprising的定义。要求判断是否。
思路:水题。因为很久没用map了,特地用下map。
#include<iostream>
#include<string>
#include<map>
using namespace std;
string str;
int main()
{
while(cin>>str,str!="*")
{
bool flag=true;
for(int i=0;i<str.length()&&flag;i++)
{
map<string,int> mp;
for(int j=0;j+i+1<str.length()&&flag;j++)
{
char tmp[3]={str[j],str[j+i+1],'\0'};
if(mp[tmp]>0)
{
cout<<str<<" is NOT surprising."<<endl;
flag=false;
}
else
mp[tmp]++;
}
}
if(flag)
cout<<str<<" is surprising."<<endl;
}
return 0;
}