评选最佳品牌(第十届 省赛 T3)
暴力吗,没什么技术含量。
程序:
#include<bits/stdc++.h> using namespace std; int n,m; int a[101]; string s[1002]; int vis[101]={0}; int main() { ios::sync_with_stdio(false); cin>>m>>n; for(int i=1;i<=n;i++) cin>>s[i]; while(1) { memset(a,0,sizeof a); int t=0,maxn=0; for(int i=1;i<=m;i++) if(vis[i]==0) t++,maxn=i; if(t==1) { cout<<maxn; return 0; } for(int i=1;i<=n;i++) { for(int j=0;j<s[i].length();j++) { int t1=s[i][j]-'0'; if(t1==0) break; if(vis[t1]==0) { a[t1]++; break; } } } int minn=0x3f,t1=0,ans=0; for(int i=1;i<=m;i++) if(vis[i]==0) minn=min(minn,a[i]); for(int i=1;i<=m;i++) { if(vis[i]==0) { ans++; if(a[i]==minn) t1++; } } if(t1==ans) { cout<<minn; return 0; } for(int i=1;i<=m;i++) if(minn==a[i]) vis[i]=1; } return 0; }