SDNU 1093.DNA排序(水题)
生活随笔
收集整理的這篇文章主要介紹了
SDNU 1093.DNA排序(水题)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Description
逆序數(shù)可以用來(lái)是描述一個(gè)序列混亂成度的量。例如,“DAABEC”的逆序數(shù)為5,其中D大于它右邊的4個(gè)數(shù),E大于它右邊的1個(gè)數(shù),4+1=5;又例如“ZWQM”的逆序數(shù)為3+2+1+0=6。現(xiàn)在有許多長(zhǎng)度一樣的字符串,每個(gè)字符串里面只會(huì)出現(xiàn)四種字母(A,T,G,C)。你現(xiàn)在被要求編寫程序?qū)⑦@些字符串按照他們的逆序數(shù)進(jìn)行排序
Input
第一行包括兩個(gè)正整數(shù),第一個(gè)正整數(shù)N給出了字符串的長(zhǎng)度,第二個(gè)正整數(shù)M給出了字符串的數(shù)量。(1<=N,M<=100) 接下來(lái)M行每行一個(gè)長(zhǎng)度為N的字符串,只包含A,T,G,C四種字母。Output
將輸入的字符串按照其逆序數(shù)進(jìn)行排序,如果兩個(gè)字符串的逆序數(shù)相等,則按照輸入中兩者的先后順序進(jìn)行排列。Sample Input
10 6 AACATGAAGG TTTTGGCCAA TTTGGCCAAA GATCAGATTT CCCGGGGGGA ATCGATGCATSample Output
CCCGGGGGGA AACATGAAGG GATCAGATTT ATCGATGCAT TTTTGGCCAA TTTGGCCAAAHint
選擇排序是不穩(wěn)定的Source
HRBEU #include<bits/stdc++.h> using namespace std;#define ll long long #define eps 1e-9const int inf = 0x3f3f3f3f; const int mod = 1e9+7; const int maxn = 100000 + 8;int n, m; char c[1000 + 8][1000 + 8];struct node {char c[1000 + 8];int num, id; }a[1000 + 8];bool cmp(node a, node b) {if(a.num != b.num)return a.num < b.num;return a.id < b.id; }int main() {std::ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin>>n>>m;for(int i = 0; i < m; i++){a[i].num = 0;for(int j = 0; j < n; j++){cin>>c[i][j];a[i].c[j] = c[i][j];a[i].id = i;}}for(int i = 0; i < m ; i++)for(int j = 0; j < n - 1; j++)for(int k = j + 1; k < n; k++)if(c[i][j] > c[i][k])a[i].num++;sort(a, a + m, cmp);for(int i = 0; i < m; i++){for(int j = 0; j < n; j++)cout<<a[i].c[j];cout<<'\n';}return 0; }?
轉(zhuǎn)載于:https://www.cnblogs.com/RootVount/p/11420744.html
總結(jié)
以上是生活随笔為你收集整理的SDNU 1093.DNA排序(水题)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: SDNU 1029.巧分整数(斯特林数(
- 下一篇: pygame外星人