zju 1188 DNA Sorting

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
struct node
{
    int a;
    char s[105];
}p[105];
int cmp(node c,node b)
{
    return c.a<b.a;
}
int main()
{
     int m,n;
     int t;
  scanf("%d",&t);
  //printf("\n");
    while(t--)
    {
         scanf("%d%d",&n,&m);

          for(int i=0;i<105;i++)
          p[i].a=0;

          for(int i=0;i<m;i++)
            scanf("%s",p[i].s); 

          for(int k=0;k<m;k++)
          for(int i=0;i<n-1;i++)
              for(int j=i+1;j<n;j++)
              if(p[k].s[j]<p[k].s[i])
              p[k].a++;  

          sort(p,p+m,cmp); 

     for(int i=0;i<m;i++)
        printf("%s\n",p[i].s);
     if(t)
         putchar(‘\n‘);

    }
    return 0;
}

#include<stdio.h>

#include<string.h>

#include<algorithm>

using namespace std;

struct node {

int a;     char s[105];

}p[105];

int cmp(node c,node b)

{     return c.a<b.a; }

int main() {

int m,n;

int t;

scanf("%d",&t);

while(t--)

{

scanf("%d%d",&n,&m);

for(int i=0;i<105;i++)

p[i].a=0;

for(int i=0;i<m;i++)

scanf("%s",p[i].s);

for(int k=0;k<m;k++)

for(int i=0;i<n-1;i++)

for(int j=i+1;j<n;j++)

if(p[k].s[j]<p[k].s[i])

p[k].a++;

sort(p,p+m,cmp);

for(int i=0;i<m;i++)

printf("%s\n",p[i].s);

  if(t)      putchar(‘\n‘);        

}

return 0;

}

#include <iostream>
#include <algorithm>
#include<string>
using namespace std;
struct dna
{
    string a;
    int t;
};
bool cmp(dna x,dna y)
{
    return x.t<y.t;
}
int main(int argc, char *argv[])
{
    int m,n,k,i,sum,c;
    struct dna b[105];
    while (cin>>c)
    {
        while (c--)
        {
            cin>>m;
            cin>>n;
            for (i=0;i<n;i++)
            {
                sum=0;
                cin>>b[i].a;
                for (int j=0;j<m;j++)
                    for (k=j+1;k<m;k++)
                        if (b[i].a[j]>b[i].a[k]) sum++;
                b[i].t=sum;
            }
            sort(b,b+n,cmp);
            for (i=0;i<n;i++)
                cout<<b[i].a<<endl;
            if (c) cout<<endl;
        }
    }
    return 0;
}

#include<string>
#include<cstdio>
#include<algorithm>
using namespace std;
struct f
{    string s;
    int n;
}node[105];
bool cmp(f a,f b)
{    return a.n<b.n;}
int ff(string s)
{    int i,j,sum=0;
    for(i=1;i<s.size();i++)
        for(j=0;j<i;j++)
            if(s[i]<s[j]) sum++;
    return sum;
}
int main()
{
    int t,n,m,i;
    cin>>t;
    while(t--)
    {    cin>>n>>m;
        getchar();
        for(i=0;i<m;i++)
        {    cin>>node[i].s;
            node[i].n=ff(node[i].s);
        }
        sort(node,node+m,cmp);
        for(i=0;i<m;i++)
            cout<<node[i].s<<endl;
        if(t) cout<<endl;
    }
    return 0;
}
        

zju 1188 DNA Sorting,布布扣,bubuko.com

时间: 2024-12-04 22:55:37

zju 1188 DNA Sorting的相关文章

hdoj 1379 DNA Sorting

DNA Sorting Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 2231    Accepted Submission(s): 1096 Problem Description One measure of ``unsortedness'' in a sequence is the number of pairs of entr

poj 1007 DNA Sorting (求逆序数)

DNA Sorting Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 83069   Accepted: 33428 Description One measure of ``unsortedness'' in a sequence is the number of pairs of entries that are out of order with respect to each other. For instanc

算法:POJ1007 DNA sorting

这题比较简单,重点应该在如何减少循环次数. package practice; import java.io.BufferedInputStream; import java.util.Map; import java.util.Scanner; import java.util.TreeMap; /** * DNA sorting * * @author caiyu * @date 2014-11-5 */ public class POJ1007 { public static void m

DNA Sorting(排序)

欢迎参加——BestCoder周年纪念赛(高质量题目+多重奖励) DNA Sorting Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 2182    Accepted Submission(s): 1062 Problem Description One measure of ``unsortedness'' in a sequenc

hdu 1379 DNA Sorting

DNA Sorting Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 1924    Accepted Submission(s): 949 Problem Description One measure of ``unsortedness'' in a sequence is the number of pairs of entrie

POJ_1007:DNA Sorting解题报告

[大致题意]排列多个DNA序列,按照每个序列的"有序程度".如果一个序列已经按照字母顺序排好了,那么这个序列有序程度最高,如AACCGGTT.反之,如果一个序列越无序,那么它的有序程度越低,如TGTCAA. [解题思路]计算每个序列的"逆序数",即反序字母对的个数,如ATGC的逆序数是3,因为TG,TC,GC都是逆序的.然后按照每个序列的逆序数排序,逆序数越大说明这个序列越无序. #include <iostream> #include <algo

HDU 1379 DNA sorting(求逆序数)

DNA Sorting Problem Description One measure of ``unsortedness'' in a sequence is the number of pairs of entries that are out of order with respect to each other. For instance, in the letter sequence ``DAABEC'', this measure is 5, since D is greater t

[POJ1007]DNA Sorting

试题描述 One measure of ``unsortedness'' in a sequence is the number of pairs of entries that are out of order with respect to each other. For instance, in the letter sequence ``DAABEC'', this measure is 5, since D is greater than four letters to its rig

杭电1379(DNA Sorting)java面向对象编程

点击打开链杭电1379 Problem Description One measure of ``unsortedness'' in a sequence is the number of pairs of entries that are out of order with respect to each other. For instance, in the letter sequence ``DAABEC'', this measure is 5, since D is greater t