View Code of Problem 126

#include<stdio.h>//DNA序列
#include<string.h>
main()
{
	int a,b,c,d,i,j,m,n,z[101],e,q;
	char x[101][51],y[51];
	while(scanf("%d %d",&a,&b)!=EOF)//先输入
	{
		for(i=0;i<b;i++)
			scanf("%s",&x[i]);//get字符串
		for(i=0;i<b;i++)//从第一条字符串开始
		{
			z[i]=0;
			for(j=0;j<a;j++)
			{
				if(x[i][j]=='A')//如果当前字符串是‘A’的话,就直接加零
					z[i]=z[i]+0;
				else
				{
					for(d=j;d<a;d++)//如果不是的话,再和它之后的字符比较
					{
						if(x[i][j]>x[i][d])//如果比之后的字符大,就加一
							z[i]=z[i]+1;
					}
				}
			}
		}
		for(i=0;i<b;i++)//排序
		{
			c=10000;d=i;
			for(j=0;j<b;j++)
			{
				if(z[j]<c&&z[j]!=-1)
				{
					c=z[j];
					d=j;
				}
			}
			if(z[d]!=-1)
			printf("%s\n",x[d]);
			z[d]=-1;
		}
	}
	return 0;
}

Double click to view unformatted code.


Back to problem 126