Submission #1241355

#TimeUsernameProblemLanguageResultExecution timeMemory
1241355Younis_DwaiMutating DNA (IOI21_dna)C++20
35 / 100
36 ms4108 KiB
#include "dna.h" #include<bits/stdc++.h> #define in insert #define pb push_back using namespace std; const int N=1e5+5; int n,B[N],C[N],pref[N][2]; void init(std::string a, std::string b){ n=a.size(); for(int i=1;i<=n;i++){ if(a[i-1]=='A') B[i]=1; else if(a[i-1]=='T') B[i]=2; else B[i]=3; } for(int i=1;i<=n;i++){ if(b[i-1]=='A') C[i]=1; else if(b[i-1]=='T') C[i]=2; else C[i]=3; } for(int i=1;i<=n;i++){ pref[i][0]=pref[i-1][0]; pref[i][1]=pref[i-1][1]; if(B[i]==1 && C[i]==2) pref[i][0]++; if(B[i]==2 && C[i]==1) pref[i][1]++; } return ; } int get_distance(int x, int y){ ++x;++y; int cnt1=pref[y][0]-pref[x-1][0]; int cnt2=pref[y][1]-pref[x-1][1]; if(cnt1!=cnt2) return -1; return cnt1; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...