Problem:http://codeforces.com/contest/747/problem/B
Code:
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long n,i,a,t,c,g,cc;
char ar[260];
while(cin>>n)
{
a=0;
t=0;
c=0;
g=0;
for(i=0; i<n; i++)
cin>>ar[i];
if(n%4!=0)
{
cout<<"==="<<endl;
continue;
}
for(i=0; i<n; i++)
{
if(ar[i]=='A')
a++;
else if(ar[i]=='T')
t++;
else if(ar[i]=='C')
c++;
else if(ar[i]=='G')
g++;
//cout<<a<<" "<<t<<" "<<c<<" "<<g<<endl;
}
if(a>(n/4)||t>(n/4)||c>(n/4)||g>(n/4))
{
cout<<"==="<<endl;
continue;
}
cc=0;
while(cc<n)
{
if(a<n/4&&ar[cc]=='?')
{
ar[cc]='A';
a++;
cc++;
}
if(c<n/4&&ar[cc]=='?')
{
ar[cc]='C';
c++;
cc++;
}
if(g<n/4&&ar[cc]=='?')
{
ar[cc]='G';
g++;
cc++;
}
if(t<n/4&&ar[cc]=='?')
{
ar[cc]='T';
t++;
cc++;
}
if(ar[cc]!='?')
cc++;
}
for(i=0; i<n; i++)
cout<<ar[i];
cout<<endl;
}
return 0;
}
Code:
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long n,i,a,t,c,g,cc;
char ar[260];
while(cin>>n)
{
a=0;
t=0;
c=0;
g=0;
for(i=0; i<n; i++)
cin>>ar[i];
if(n%4!=0)
{
cout<<"==="<<endl;
continue;
}
for(i=0; i<n; i++)
{
if(ar[i]=='A')
a++;
else if(ar[i]=='T')
t++;
else if(ar[i]=='C')
c++;
else if(ar[i]=='G')
g++;
//cout<<a<<" "<<t<<" "<<c<<" "<<g<<endl;
}
if(a>(n/4)||t>(n/4)||c>(n/4)||g>(n/4))
{
cout<<"==="<<endl;
continue;
}
cc=0;
while(cc<n)
{
if(a<n/4&&ar[cc]=='?')
{
ar[cc]='A';
a++;
cc++;
}
if(c<n/4&&ar[cc]=='?')
{
ar[cc]='C';
c++;
cc++;
}
if(g<n/4&&ar[cc]=='?')
{
ar[cc]='G';
g++;
cc++;
}
if(t<n/4&&ar[cc]=='?')
{
ar[cc]='T';
t++;
cc++;
}
if(ar[cc]!='?')
cc++;
}
for(i=0; i<n; i++)
cout<<ar[i];
cout<<endl;
}
return 0;
}
No comments:
Post a Comment