Submission #486477

#TimeUsernameProblemLanguageResultExecution timeMemory
486477perchutsIgra (COCI17_igra)C++17
40 / 100
1 ms332 KiB
#include <bits/stdc++.h> #define maxn (int)(1e5+51) #define all(x) x.begin(), x.end() #define sz(x) (int) x.size() #define endl '\n' #define ll long long #define ull unsigned long long #define ii pair<int,int> #define iii tuple<int,int,int> #define inf (int)(2e9+1) #define mod (int)(1e9+7) using namespace std; int n,q[3]; int main() { ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL); string in,m,ans=""; cin>>n>>in>>m; for(int i=0;i<n;i++) q[in[i]-'a']++; for(int i=0;i<n;i++){ int x,y,z; if(m[i]=='a'){ x=0,y=1,z=2; }else if(m[i]=='b'){ x=1,y=0,z=2; }else{ x=2,y=0,z=1; } if(q[y]){ q[y]--;ans+=char('a'+y); }else{ if(q[z]){ q[z]--;ans+=char('a'+z); }else{ for(int j=i-1;j>=0;j--){ if(ans[j]!=m[i]&&m[j]!=m[i]){ ans+=ans[j]; ans[j]=m[i]; q[x]--; break; } } } } // cout<<ans<<endl; } cout<<ans<<endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...