AcWing 103. 电影
原题链接
简单
作者:
Anoxia_3
,
2020-05-06 16:55:30
,
所有人可见
,
阅读 601
#include <iostream>
#include <algorithm>
using namespace std;
const int N = 200010;
typedef pair<int , int> PII;
PII mv[N];//存储电影的音频和字幕语言类型
unordered_map<int , int> s;//因为语言种数过多无法直接用数组存,而且十分稀疏,所以用unordered_map存
bool cmp(PII a , PII b)//电影a比电影b好
{
if(s[a.first] > s[b.first] || s[a.first] == s[b.first] && s[a.second] > s[b.second])
return true;
}
int main()
{
int n;
cin >> n;
for(int i = 0 ; i < n ; i++)//读入科学家的语言
{
int x;
cin >> x;
s[x]++;//x语言的人数加1
}
int m;
cin >> m;
for(int i = 1 ; i <= m ; i++) cin >> mv[i].first;
for(int i = 1 ; i <= m ; i++) cin >> mv[i].second;
int res = 1;
for(int i = 2 ; i <= m ; i++)//遍历一遍所有电影,即可求出最佳电影
if(cmp(mv[i] , mv[res])) res = i;
cout << res << endl;
}