POJ 1007

#include<iostream>
#include<string>
#include<cstdio>
#include <algorithm>
#include<stdlib.h>
using namespace std;
int cmp(int a,int b){
    return a<b;
}

void sort(int number);
void measure_DNA(int i,string a);

struct struct_dna
{
	string dna;
	int count;
};

struct_dna dnalist[100];

int main()
{
	int number;
	string DNA;
	int len;
    cin>>len;
	cin>>number;
    int* a=new int[number];
	for(int i=0;i<number;i++)
	{
		cin>>DNA;
		dnalist[i].dna=DNA;
		measure_DNA(i,DNA);
	}
	
	sort(number);
	
	for(int i=0;i<number;i++)
	cout<<dnalist[i].dna<<endl;
	return 0;

}

void measure_DNA(int i,string a)
{
	int len=a.length();
	int sum=0;
	for(int i=0;i<len-1;i++)
	{
		if(a[i]=='A')
			continue;
		for(int j=i+1;j<len;j++)
		{
			if(a[i]>a[j])
				sum++;			
		}
	}
	dnalist[i].count=sum;
}

void sort(int number)
{
	int MinIndex;
	struct_dna temp;
	for(int i=0;i<number;i++)
	{
		MinIndex=i;
		for(int j=i+1;j<number;j++)
		{
			if(dnalist[j].count<dnalist[MinIndex].count)
			MinIndex=j;
		}
		temp=dnalist[MinIndex];
		dnalist[MinIndex]=dnalist[i];
		dnalist[i]=temp;
	}
}

  

posted @ 2017-09-13 20:21  PirateLHX  阅读(108)  评论(0编辑  收藏  举报