【字符串】HDU5590ZYB's Biology【BestCoder Round #65】

来源:互联网 发布:js异步完成执行函数 编辑:程序博客网 时间:2024/05/22 05:27

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5590

Problem Description
After getting 600 scores in NOIP ZYB(ZJ267) begins to work with biological questions.Now he give you a simple biological questions:
he gives you a DNA sequence and a RNA sequence,then he asks you whether the DNA sequence and the RNA sequence are 
matched.

The DNA sequence is a string consisted of A,C,G,T;The RNA sequence is a string consisted of A,C,G,U.

DNA sequence and RNA sequence are matched if and only if A matches U,T matches A,C matches G,G matches C on each position. 
 

Input
In the first line there is the testcase T.

For each teatcase:

In the first line there is one number N.

In the next line there is a string of length N,describe the DNA sequence.

In the third line there is a string of length N,describe the RNA sequence.

1T10,1N100
 

Output
For each testcase,print YES or NO,describe whether the two arrays are matched.
 

Sample Input
24ACGTUGCA4ACGTACGU
 

Sample Output
YESNO

代码:

#include<iostream>#include<cstring>#include<cstdio>#include<string>using namespace std;char a[1101],b[1100],c[110];char change(char s){    char ss='0';    if(s=='A') ss='U';    else if(s=='C') ss='G';    else if(s=='G') ss='C';    else if(s=='T') ss='A';    return ss;}int main(){    int t,n;    scanf("%d",&t);    //getchar();    while(t--){        getchar();        scanf("%d",&n);        getchar();        for(int i=0;i<n;i++){            scanf("%c",&a[i]);            c[i]=change(a[i]);            //cout<<c[i];        }        getchar();        //cout<<endl;        int flag=0;        for(int i=0;i<n;i++){            scanf("%c",&b[i]);            if(c[i]!=b[i]) flag=1;        }        if(flag) cout<<"NO"<<endl;        else cout<<"YES"<<endl;    }    return 0;}


0 0
原创粉丝点击