输入:第一行 候选人人数
第二行 候选人字符
第三行 投票人数
第四行 投票字符串
输出:候选人 : 得票数(换行)注意这里的冒号前后都要有空格才能通过OJ系统
最后一行为invalid :票数
#include<iostream>
#include<map>
using namespace std;
int main()
{
int can_num;
int effect=0;
cin >> can_num;
map<char,int>can;
map<char, int>::iterator p;
//p = can.begin();
char a[100],b[100];
for (int i = 0;i < can_num;i++)
{
cin >> a[i];
can[a[i]] = 1;
}
int vote_num;
cin >> vote_num;
for (int j = 0;j < vote_num;j++)
{
cin >> b[j];
can[b[j]]++;
}
for (p=can.begin();p != can.end();p++)
{
if (p->second > 1)
{
cout << p->first << ' '<<':'<<' ' << (p->second) - 1 << endl;
effect += p->second - 1;
}
}
int une = vote_num - effect;
cout << "Invalid : " << une;
return 0;
}