码迷,mamicode.com
首页 > 其他好文 > 详细

registration system(map+思维)

时间:2020-04-22 22:53:25      阅读:80      评论:0      收藏:0      [点我收藏+]

标签:space   gis   16px   输入   ace   src   判断   ima   ==   

技术图片

技术图片

     题意:每次给出一个只含小写字母的字符串,如果之前没出现过,就输出YES,插入到数据库,否则输出  它+数字   的形式,数字按出现顺序排列。

     解析:比如只输入a,会陆续出现a,a1,a2,a3......a10,a11。可以看出来,我们压根不需要每次判断当前字符串的上次出现是什么样子,其实本质上就是原字符串+出现次数的形式而已。所以用map记录次数,每次都++记录下就可以了。

#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<string.h>
#include<vector>
#include<cmath>
#include<string>
#include<map>
#include<queue>
using namespace std;
typedef long long ll;
const int maxn = 1e5+10;
string s;
int a[maxn];
int main()
{
    int n;
    cin>>n;
    map<string,int>mp;
    for(int i=1;i<=n;i++)
    {
        cin>>s;
        if(mp[s]==0)
        {
            cout<<"OK"<<endl;
            mp[s]++;
        }
        else
        {
            cout<<s<<mp[s]<<endl;
            mp[s]++;
        }
    }
}

 

registration system(map+思维)

标签:space   gis   16px   输入   ace   src   判断   ima   ==   

原文地址:https://www.cnblogs.com/liyexin/p/12757311.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!