페이지

1969번: DNA Consensus String

https://www.acmicpc.net/problem/1969


$O(nm)$

각 자리마다 DNA들 중 가장 많은 뉴클레오티드로 구성한다.

#include<iostream>
#include<algorithm>
#include<string>
using namespace std;
int n, m, q;
string s[1000], p;
int main() {
    cin >> n >> m;
    for (int i = 0; i < n; i++) cin >> s[i];
    for (int i = 0; i < m; i++) {
        int a[26] = {};
        for (int j = 0; j < n; j++) a[s[j][i] - 'A']++;
        int t = max_element(a, a + 26) - a;
        p += t + 'A';
        q += n - a[t];
    }
    cout << p << endl << q;
    return 0;
}

댓글 없음 :

댓글 쓰기