zoukankan      html  css  js  c++  java
  • uva 1368 DNA Consensus String 字符串

    这学期离散数学的最后一章刚学了类似的东西

    什么decoding function和humming distance手算起来才有点难 编程的话就很水了

    弱校连萌题目链接:http://acm.bnu.edu.cn/v3/contest_show.php?cid=5772#problem/I

    #include <cstdio>
    #include <cstring>
    #include <cstdlib>
    #include <iostream>
    #include <algorithm>
    #include <cmath>
    #include <set>
    #include <queue>
    #include <stack>
    #include <map>
    #include <vector>
    
    using namespace std;
    
    typedef long long ll;
    typedef unsigned long long ull;
    typedef pair<int, int> P;
    
    const int maxn = 20;
    
    char a[55][1010];
    char b[1010];
    
    const char ch[] = {'A', 'C', 'G', 'T'};
    
    int main()
    {
        //freopen("in.txt", "r", stdin);
        //freopen("out.txt", "w", stdout);
    
        int T;
        scanf("%d", &T);
    
    
        while(T--)
        {
            int ans = 0;
    
            int m, n;
            scanf("%d%d", &m, &n);
    
            for(int i = 0; i < m; i++)
                scanf("%s", a[i]);
    
            int cnt[4];
    
            for(int i = 0; i < n; i++)
            {
                memset(cnt, 0, sizeof(cnt));
    
                for(int j = 0; j < m; j++)
                {
                    int k = 0;
                    while(ch[k] != a[j][i])
                        k++;
                    cnt[k]++;
                }
    
                int maxnum = 0;
                for(int j = 0; j < 4; j++)
                    if(cnt[j] > maxnum)
                        maxnum = cnt[j];
    
                for(int j = 0; j < 4; j++)
                {
                    if(cnt[j] == maxnum)
                    {
                        b[i] = ch[j];
                        ans += m - maxnum;
                        break;
                    }
                }
    
            }
            b[n] = '';
    
            printf("%s
    ", b);
            printf("%d
    ", ans);
        }
    
        return 0;
    }
  • 相关阅读:
    javaScript快速入门
    解决编程式路由往同一地址跳转时会报错的情况
    babel 依赖
    路由拆分可以达到一定程度的性能优化
    正则的扩展
    设计模式
    mysql数据库
    php基本语法
    事件循环
    面向对象编程
  • 原文地址:https://www.cnblogs.com/dishu/p/4263889.html
Copyright © 2011-2022 走看看