VioletaBabel
1969번: DNA 본문
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int main()
{//ACGT
int n, m, acgt[4] = { 0, 0, 0, 0 }, hd = 0;
cin >> n >> m;
char** dna = new char*[n];
for (int i = 0; i < n; ++i)
dna[i] = new char[51];
char answer[51];
answer[m] = '\0';
for (int i = 0; i < n; ++i)
cin >> dna[i];
for (int i = 0; i < m; ++i)
{
for (int j = 0; j < n; ++j)
switch (dna[j][i])
{
case 'A': ++acgt[0]; break;
case 'C': ++acgt[1]; break;
case 'G': ++acgt[2]; break;
case 'T': ++acgt[3];
}
if (acgt[0] >= acgt[1] && acgt[0] >= acgt[2] && acgt[0] >= acgt[3])
{
answer[i] = 'A';
hd += (n - acgt[0]);
}
else if (acgt[1] >= acgt[2] && acgt[1] >= acgt[3])
{
answer[i] = 'C';
hd += (n - acgt[1]);
}
else if (acgt[2] >= acgt[3])
{
answer[i] = 'G';
hd += (n - acgt[2]);
}
else
{
answer[i] = 'T';
hd += (n - acgt[3]);
}
for (int j = 0; j < 4; ++j)
acgt[j] = 0;
}
cout << answer << '\n' << hd;
}
'백준 > 백준-C++' 카테고리의 다른 글
11000번: 강의실 배정 (0) | 2017.05.24 |
---|---|
2212번: 센서 (0) | 2017.05.24 |
1931번: 회의실배정 (0) | 2017.05.24 |
11047번: 동전 0 (0) | 2017.05.23 |
1449번: 수리공 항승 (0) | 2017.05.23 |