ACM_水题你信吗

水题你信吗

Time Limit: 2000/1000ms (Java/Others)

Problem Description:

某发最近又认识了很多妹(han)子,可是妹(han)子一多不免有时会忘记那么一两个,为了记得他们的名字,发哥设计了一个记录器。对于每个他刚认识的妹(han)子,他都把妹子的名字放进记录器里,如果记录器已经有这个妹子的名字,则在这个妹子的名字后面加上一个数字(数字从1开始),输出妹子的名字加上数字。若记录器没有这个妹子的记录,则输出OH GOD。

Input:

(EOF)输入一个数字n表示发哥认识的妹子(1<=N<=10^5),接下来n行每行一个字符串,字符串不超过50个小写字母。输出:如描述。

Output:

如描述。

Sample Input:

6
first
first
second
second
third
first

Sample Output:

OH GOD
first1
OH GOD
second1
OH GOD
first2
解题思路:解决此题使用map容器(键值对)比较简单,水过!
AC代码:
 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 int main(){
 4     int t;string str;
 5     while(cin>>t){
 6         getchar();map<string,int> mp;//默认键对应的值为0
 7         while(t--){
 8             cin>>str;
 9             if(mp.find(str)==mp.end()){cout<<"OH GOD"<<endl;mp[str]++;}
10             else{cout<<str<<mp[str]++<<endl;}
11         }
12     }
13     return 0;
14 }

 

posted @ 2018-06-26 21:29  霜雪千年  阅读(128)  评论(0编辑  收藏  举报