吉大acm1101: DNA Sorting
#include<stdio.h>
#include<stdlib.h>
struct aa
{
char x[150];
int m;
}y[150];
int qq(int m,char *x,int y)
{
int i,t=0,j,k,w=0;
for(i=0;i<y;i++)
{
for(j=i+1;j<y;j++)
if(x[i]>x[j])
w++;
}
return w;
}
int main()
{
struct aa s;
int n,a,b,i,z[150],j,k,x;
char t,r;
scanf("%d",&n);
for(x=0;x<n;x++)
{
scanf("%d%d",&a,&b);
getchar();
for(i=0;i<b;i++)
{
for(j=0;j<a;j++)
y[i].x[j]=getchar();
getchar();
z[i]=qq(i,y[i].x,a);
}
for(i=0;i<b;i++)
for(j=0;j<b-1;j++)
if(z[j]>z[j+1])
{
k=z[j];
z[j]=z[j+1];
z[j+1]=k;
s=y[j];
y[j]=y[j+1];
y[j+1]=s;
}
for(i=0;i<b;i++)
{
for(j=0;j<a;j++)
printf("%c",y[i].x[j]);
printf("/n");
}
if(x!=n-1)
printf("/n");
}
}
本文介绍了一个解决DNA排序问题的C语言程序。该程序通过读取DNA序列并计算每条序列所需的交换次数来对其进行排序。文章详细展示了如何使用结构体存储DNA序列,并通过比较实现排序。
476

被折叠的 条评论
为什么被折叠?



