gets被禁止后使用cin.getline
找出字符串中第一个只出现一次的字符(题面已经更新)
http://www.nowcoder.com/questionTerminal/e896d0f82f1246a3aa7b232ce38029d4
#include<bits/stdc++.h> using namespace std; const int maxn=1e5+5; char solve[maxn]={0}; int main() { while( cin.getline(solve,maxn) ) { int Len=strlen( solve ); map<char,int> mp; for(int i=0; i<Len; ++i) { mp[ solve[i] ]++; } int tag=1; for(int i=0; i<Len; ++i) { if( 1==mp[ solve[i] ] ) { tag=0; printf("%c\n",solve[i] ); break; } } if( tag ) { printf("-1\n"); } //memset( solve, 0, sizeof(solve) ); } return 0; }