View Code of Problem 126

#include<stdio.h>
typedef struct info{
	char xl[100];
	int nx;
}info;
int main(){
 	int n,m,i,count,j,j1;
 	info lis[100],tep;
 	
	while(scanf("%d %d",&n,&m)!=EOF){
			for(i=0;i<m;i++){
			count=0;
			scanf("%s",lis[i].xl);
			for(j=0;j<n-1;j++){
				for(j1=j+1;j1<n;j1++){
					if(lis[i].xl[j]>lis[i].xl[j1]){
						count++;
					}
				}
			} 
			lis[i].nx=count;
		} 
		for(i=m-1;i>=1;i--){
			for(j=0;j<i;j++){
				if(lis[j].nx>lis[j+1].nx){
					tep=lis[j];
					lis[j]=lis[j+1];
					lis[j+1]=tep;
				}
			}
		}
		for(i=0;i<m;i++){
			printf("%s\n",lis[i].xl);
		}
	}
	return 0;
}

Double click to view unformatted code.


Back to problem 126