今年Ural比賽的一道題。用map模擬。求出判斷正確的人的個數,最后乘以5得出結果。
#include <iostream>
#include <string>
#include <cstring>
#include <cstdio>
#include <map>
using namespace std;
map<string,string> m;
int main()
{
//freopen("1.in","r",stdin);
string str;
for(int i=1;i<=4;i++)
{
cin>>str;
m[str]="gold";
}
for(int i=1;i<=4;i++)
{
cin>>str;
m[str]="silver";
}
for(int i=1;i<=4;i++)
{
cin>>str;
m[str]="bronze";
}
int n,sum=0,qt=0;
cin>>n;
while(n--)
{
string s1,s2,s3;
int t;
cin>>t;
int cnt=0;
for(int i=0;i<t;i++)
{
cin>>s1>>s2>>s3;
if(m[s1]==s3) cnt++;
}
if(sum<cnt)
{
sum=cnt;
qt=1;
}
else if(sum==cnt)
{
qt++;
}
}
cout<<qt*5<<endl;
return 0;
}
#include <iostream>
#include <string>
#include <cstring>
#include <cstdio>
#include <map>
using namespace std;
map<string,string> m;
int main()
{
//freopen("1.in","r",stdin);
string str;
for(int i=1;i<=4;i++)
{
cin>>str;
m[str]="gold";
}
for(int i=1;i<=4;i++)
{
cin>>str;
m[str]="silver";
}
for(int i=1;i<=4;i++)
{
cin>>str;
m[str]="bronze";
}
int n,sum=0,qt=0;
cin>>n;
while(n--)
{
string s1,s2,s3;
int t;
cin>>t;
int cnt=0;
for(int i=0;i<t;i++)
{
cin>>s1>>s2>>s3;
if(m[s1]==s3) cnt++;
}
if(sum<cnt)
{
sum=cnt;
qt=1;
}
else if(sum==cnt)
{
qt++;
}
}
cout<<qt*5<<endl;
return 0;
}