CodeForces 1000A Codehorses T-shirts(STL map思维)
Posted jiamian
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CodeForces 1000A Codehorses T-shirts(STL map思维)相关的知识,希望对你有一定的参考价值。
https://codeforces.com/problemset/problem/1000/A
题意:
有n个人,给出每个人的衣服的尺码,现在,将这n件衣服的尺码换成另外的n种尺码,如果有尺码一样的衣服,则不需要换,问,最少需要更换几件衣服。
思路:
map记录一下每种尺码的衣服出现的次数,然后对新尺码进行一一比对,如果新尺码的数量大于原有的,则说明要更换数量为二者差值的衣服。
代码:
1 #include <stdio.h> 2 #include <string.h> 3 #include <iostream> 4 #include <string> 5 #include <math.h> 6 #include <algorithm> 7 #include <vector> 8 #include <stack> 9 #include <queue> 10 #include <set> 11 #include <map> 12 #include <math.h> 13 const int INF=0x3f3f3f3f; 14 typedef long long LL; 15 const int mod=1e9+7; 16 const int maxn=1e5+10; 17 using namespace std; 18 19 int main() 20 21 int n; 22 cin>>n; 23 map<string,int> mp1,mp2; 24 map<string,int>::iterator it; 25 string str; 26 int num=0; 27 for(int i=1;i<=n;i++) 28 29 cin>>str; 30 mp1[str]++; 31 32 for(int i=1;i<=n;i++) 33 34 cin>>str; 35 mp2[str]++; 36 37 for(it=mp2.begin();it!=mp2.end();it++) 38 39 if(it->second>mp1[it->first]) 40 num+=it->second-mp1[it->first]; 41 42 printf("%d\\n",num); 43 return 0; 44
以上是关于CodeForces 1000A Codehorses T-shirts(STL map思维)的主要内容,如果未能解决你的问题,请参考以下文章