读书人

高级列单纯词

发布时间: 2013-10-22 16:17:03 作者: rapoo

高级列单词

#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>using namespace std;struct stu{ char ch[50]; int sum;}a[10000];int n;int cmp(stu a,stu b){ if(a.sum>b.sum) return 1; else if(a.sum==b.sum) { if(strcmp(a.ch,b.ch)<0) return 1; else return 0; } else return 0;}int main(){ char c,ch[10000][50],b[50]="++"; while(~scanf("%d",&n)) { int i=0,k=0,j=0,s=0; getchar(); while((c=getchar())!=EOF) { if(c>='A' && c<='Z') c+=32; if(c>='a' && c<='z') { ch[k][j]=c; j++; } if(j!=0) if(c==' '||c=='\n'||c==','||c=='"'||c=='.'||c=='\''||c=='-') { k++; j=0; } } while(i<=k) { if(strcmp(ch[s],b)!=0) { a[i].sum=1; strcpy(a[i].ch,ch[s]); for(j=s+1;j<=k;j++) { if(strcmp(ch[j],a[i].ch)==0) { strcpy(ch[j],b); a[i].sum++; } } i++; } s++; } sort(a+0,a+k+1,cmp); j=1; //printf("Rank %d: %s (%d)\n",j,a[1].ch,a[1].sum); for(i=0;i<n;i++) { if(a[i].sum!=a[i-1].sum) j=i+1; if(a[i].ch!=NULL)printf("Rank %d: %s (%d)\n",j,a[i].ch,a[i].sum); } } return 0;}


读书人网 >编程

热点推荐