📄 1007.cpp
字号:
#include<iostream>
using namespace std;
typedef struct node
{
int num;
char* datastr;
struct node* next;
}Node,*List;
int main()
{
int M,N,i,j,k;
char **str;
int num;
List head;
Node* p;
Node* p1;
Node* p2;
int A,C,G,T;
cin>>N>>M;
str=new char*[M];
//输入数据
for(i=0;i<M;i++)
{
str[i]=new char[N];
cin>>str[i];
}
head=new Node;
head->next=NULL;
for(i=M-1;i>=0;i--)
{
A=0,C=0,G=0,T=0;
num=0;
for(j=N-1;j>=0;j--)
{
switch(str[i][j])
{
case 'A':
A++;
break;
case 'C':
num=num+A;
C++;
break;
case 'G':
num=num+A+C;
G++;
break;
case 'T':
num=num+A+C+G;
break;
default:
break;
}
}
p=new Node;
p->datastr=str[i];
p->num=num;
p1=head->next;
p2=head;
while(p1!=NULL)
{
if(p->num<=p1->num)
break;
else
{
p2=p1;
p1=p1->next;
}
}
p->next=p2->next;
p2->next=p;
}
p=head->next;
while(p!=NULL)
{
cout<<p->datastr<<endl;
p=p->next;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -