zoukankan      html  css  js  c++  java
  • poj 1007 DNA Sorting

     错误

    #include<stdio.h>

    #include<string.h>

    #include<algorithm>

    using namespace std;

    struct node {  

       int a;    

    char s[1000];       }p[1000];

    int cmp(node c,node b)

    {     return c.a<b.a; }

    int main()

    {    

      int m,n;

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

         {

              for(int i=0;i<1000;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;i++)   

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

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

                 p[k].a++;              

                sort(p,p+m,cmp);       

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

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

         }  

      }

    *************************************************************************************************************************

    #include <iostream>
    #include <string>
    #include <algorithm>
    #include <vector>
    using namespace std;
    
    vector<string> my;            
    vector<string> ::iterator it ;
    int n,m,i;
    string s1;
    bool cmp(const string &a,const string &b)
    {
     int s1=0,s2=0,i,j;
     for(i=0; i<a.size();i++)
       for(j=i+1; j<a.size();j++)
         if(a[i]>a[j]) s1++ ;
    for(i=0; i<b.size();i++)
       for(j=i+1; j<b.size();j++)
         if(b[i]>b[j]) s2++ ;
    if(s1!=s2)     return s1<s2 ;     else return s1<s2 ;    
    }
    int main(  )
    {int x=0;
     while(cin>>n>>m)
     {
         my.clear();
         for(i=0;i<m;i++)
         {  cin>>s1 ; my.push_back(s1); }
         sort(my.begin(),my.end(),cmp);
         if(x)  cout<<endl;
          x++;
          for(i=0;i<my.size();i++)  
            cout<<my[i]<<endl ;
     }
        
        
    }
    View Code

    #include <iostream>
    #include <string>
    #include <algorithm>
    #include <vector>
    using namespace std;

    vector<string> my;
    vector<string> ::iterator it ;
    int n,m,i;
    string s1;
    bool cmp(const string &a,const string &b)
    {
    int s1=0,s2=0,i,j;
    for(i=0; i<a.size();i++)
    for(j=i+1; j<a.size();j++)
    if(a[i]>a[j]) s1++ ;
    for(i=0; i<b.size();i++)
    for(j=i+1; j<b.size();j++)
    if(b[i]>b[j]) s2++ ;
    if(s1!=s2) return s1<s2 ; else return s1<s2 ;
    }
    int main( )
    {int x=0;
    while(cin>>n>>m)
    {
    my.clear();
    for(i=0;i<m;i++)
    { cin>>s1 ; my.push_back(s1); }
    sort(my.begin(),my.end(),cmp);
    if(x) cout<<endl;
    x++;
    for(i=0;i<my.size();i++)
    cout<<my[i]<<endl ;
    }
    }

    ********************************************************888

    accept

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    #include<vector>
    using namespace std;
    vector<string> x;
    bool cmp(string a,string b)
    {
        int i,j,ans=0;
        for(i=0;i<a.size();i++)
        for(j=i+1;j<a.size();j++)
        {
            if(a[i]>a[j])ans++;
            if(b[i]>b[j])ans--;
        }
        return ans<0;
    }
    int main()
    {
        string s;
        int i,N,M,flag=0;
        while(cin>>N>>M)
        {
            if(flag!=0)
            printf("
    ");
            flag=1;
            x.clear();
        for(i=0;i<M;i++)
        {
            cin>>s;
            x.push_back(s);
        }
            sort(x.begin(),x.end(),cmp);
            
        for(i=0;i<x.size();i++)
            cout<<x[i]<<endl;
        }
        return 0;
    }
    View Code

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    #include<vector>
    using namespace std;
    vector<string> x;
    bool cmp(string a,string b)
    {
     int i,j,ans=0;
     for(i=0;i<a.size();i++)
     for(j=i+1;j<a.size();j++)
     {
      if(a[i]>a[j])ans++;
      if(b[i]>b[j])ans--;
     }
     return ans<0;
    }
    int main()
    {
     string s;
     int i,N,M,flag=0;
     while(cin>>N>>M)
     {
      if(flag!=0)
      printf(" ");
      flag=1;
      x.clear();
     for(i=0;i<M;i++)
     {
      cin>>s;
      x.push_back(s);
     }
      sort(x.begin(),x.end(),cmp);
      
     for(i=0;i<x.size();i++)
      cout<<x[i]<<endl;
     }
     return 0;
    }

  • 相关阅读:
    Super Jumping! Jumping! Jumping!(求最大上升子序列和)
    HZNU1837——一道简单的方程
    C
    B
    A
    bfs-Find a way
    bfs——Red and Black
    dfs——n皇后问题
    dfs——n皇后问题
    python画图中colorbar设置刻度和标签字体大小
  • 原文地址:https://www.cnblogs.com/2014acm/p/3885997.html
Copyright © 2011-2022 走看看