题目来源:牛客网
DNA分子是以4种脱氧核苷酸为单位连接而成的长链,这4种脱氧核苷酸分别含有A,T,C,G四种碱基。
碱基互补配对原则:A和T是配对的,C和G是配对的。
如果两条碱基链长度是相同的并且每个位置的碱基是配对的,
那么他们就可以配对合成为DNA的双螺旋结构。现在给出两条碱基链,
允许在其中一条上做替换操作:把序列上的某个位置的碱基更换为另外一种碱基。
问最少需要多少次让两条碱基链配对成功
#include<iostream>
#include<string>
using namespace std;
int main()
{
string chain1, chain2;
//scanf("%s %s",&chain1,&chain2);
cin >> chain1 >> chain2;
if (chain1.size() != chain2.size())
{
return 0;
}
int size = chain1.size();
int correctnum = 0;
for (int i = 0; i < size; i++)
{
if ((chain1[i] == 'A'&&chain2[i] == 'T') || (chain1[i] == 'T' && chain2[i] == 'A') ||
(chain1[i] == 'C'&&chain2[i] == 'G') || (chain1[i] == 'G'&&chain2[i] == 'C'))
{
continue;
}
else
{
correctnum++;
}
}
cout << correctnum;
//cin.get();
//cin.get();
return 0;
}