Codeforces 4C

       这一题很水啊,一次A,C++直接开map判重和记录次数然后输出就行了,反正我开了两个map 592ms,此题给了5s,不知道毛子是什么心态。__debug大神看我如此开map一定要吐槽了。“呵,这常数太大了,看我写平衡树”,其实我是黑他的哈哈哈。。总之%%%_debug大神。

#include<cstdio>
#include<cstring>
#include<string>
#include<algorithm>
#include<map>
using namespace std;
const int MAXN=1e5+1,MAXL=33;
int n;
char s[MAXN][MAXL];
map<string,int> mp,vis;
void print(int a)
{
    char x[MAXN];
    int len=0;
    while(a)
    {
        x[len]=a%10+'0';
        a/=10;
        len++;
    }
    for(int i=len-1;i>=0;i--)printf("%c",x[i]);
    printf("\n");
}
int main()
{
    scanf("%d",&n);
    for(int i=1;i<=n;i++)
    {
        scanf("%s",s[i]);
        if(!mp[string(s[i])])printf("OK\n");
        else printf("%s",s[i]),print(vis[string(s[i])]);
        mp[string(s[i])]=i;
        vis[string(s[i])]++;
    }
}

你可能感兴趣的:(codeforces)