题意描述:有许多电影和珂学家,电影有字幕和音频,珂学家听的懂音频满意,看得懂字幕为较满意,求最多满意的人,但语言的数非常大……
思路:哈希统计(可用STL map)STL大法好!!
吐槽:数据居然会卡死unordered_map!
代码:
#include<bits/stdc++.h> using namespace std; const int N=200005; unordered_map<int,int> m1;//统计用映射 int n,m,a[N],b[N],c[N],ans=-1;//ans 记录答案下标 int main(){ cin>>n; for(int i=0;i<n;i++) cin>>a[i],m1[a[i]]++;//统计珂学家 cin>>m; for(int i=0;i<m;i++) cin>>b[i]; for(int i=0;i<m;i++) cin>>c[i]; ans=0; for(int i=0;i<m;i++){ if(m1[b[i]]>m1[b[ans]]) ans=i; else if(m1[b[i]]==m1[b[ans]]&&m1[c[i]]>m1[c[ans]]) ans=i; } cout<<ans+1;//因为是下标,所以要加一 return 0; }
最后一次更新于2019-08-02
0 条评论