杭电1004代码
来源:互联网 发布:亚马逊listing优化 编辑:程序博客网 时间:2024/05/06 09:53
以下是WA的代码:
#include<iostream>#include<string>using namespace std;int main(){ int i,j,n; cin>>n; int max=0; while(n!=0) { string str[1000],color; for(i=0;i<1000;i++) str[i]=" "; int num[1000]={0}; for(i=1;i<=n;i++) { cin>>color; for(j=1;j<i;j++) { if(str[j]==color) { num[j]++; break; } } if(i==j) { str[i]=color; num[i]++; } } int max=0;for(i=1;i<=n;i++) { if(num[i]>num[max]) { max=i; } }cout<<str[max]<<endl; max=0; cin>>n; }return 0;}
以下是AC的代码:
#include<iostream>#include<string>using namespace std;int main(){ int i,j,n; cin>>n; int max=0; while(n!=0) { string str[1001],color; for(i=0;i<1001;i++) str[i]=" "; int num[1001]={0}; for(i=1;i<=n;i++) { cin>>color; for(j=1;j<i;j++) { if(str[j]==color) { num[j]++; break; } } if(i==j) { str[i]=color; num[i]++; } } int max=0;for(i=1;i<=n;i++) { if(num[i]>num[max]) { max=i; } }cout<<str[max]<<endl; max=0; cin>>n; }return 0;}
对与错其实只差1,只要把1000改为1001就行啦。我觉得要做这个题首先要知道string数组的用法,剩下的就是数组的存放技巧啦