http://blog.csdn.net/zhouworld16/article/details/6220331
根據這個博客ac的
#include <iostream>
#include <algorithm>
using namespace std;
struct Node{
char color[10];
int num;
};
bool compare( const Node& a , const Node& b){ //compare函數容易導致 expression:invalid operator <錯誤,具體格式這是一種
if( a.num > b.num )
return true;
if(a.num < b.num )
return false;
return false;
}
int main(){
int n;
Node ps[1000];
while(cin>>n && n != 0){
for(int i=0;i<n;i++){
cin>>ps[i].color;
ps[i].num=0;
}
for(int j =0;j<n;j++){
for(int m=0;m<n;m++){
if(strcmp(ps[j].color,ps[m].color)==0){
ps[j].num++;
}
}
}
sort(ps,ps+n,compare);
cin>>ps[0].color;
cout<<endl;
}
return 0;
}
英語很重要!