-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcvote.cpp
More file actions
48 lines (42 loc) · 1.17 KB
/
cvote.cpp
File metadata and controls
48 lines (42 loc) · 1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n, m;// n -> number of chefs, m-> the number of emails
cin>>n>>m;
string chef,ctry;
map<string, string> chefCountry;//< chef, chef's country>
for(int i=0;i<n;i++)
{
cin>>chef>>ctry;
chefCountry[chef] = ctry;
}
map<string, int> chefvotes;
map<string, int> countryVotes;
string maxChef, maxCountry;
int maxChefVotes{}, maxCountryVotes{};
for(int i=0;i<m;i++)
{
cin>>chef;
chefvotes[chef]++;
if(chefvotes[chef]>maxChefVotes)
{
maxChefVotes = chefvotes[chef];
maxChef = chef;
}
else if(chefvotes[chef]==maxChefVotes){
maxChef = min(chef,maxChef);
}
countryVotes[chefCountry[chef]]++;
if(countryVotes[chefCountry[chef]]>maxCountryVotes)
{
maxCountryVotes = countryVotes[chefCountry[chef]];
maxCountry = chefCountry[chef];
}
else if(countryVotes[chefCountry[chef]]==maxCountryVotes){
maxCountry = min(maxCountry,chefCountry[chef]);
}
}
cout<<maxCountry<<"\n";
cout<<maxChef<<"\n";
}