# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1141981 | FZ_Laabidi | Mutating DNA (IOI21_dna) | C++20 | 0 ms | 0 KiB |
#include<bits/stdc++.h>
#include "dna.h"
#define int long long
using namespace std;
int n, q;
string a, b;
void init(string A, string B){
a=A;
b=B;
}
int get_distance(int x, int y){
int dist = y-x+1;
string s1="", s2="";
map<int, int> freq1, freq2;
for(int i = x; i<=y; i++){
s1.push_back(a[i]);
s2.push_back(b[i]);
freq1[a[i]]++;
freq2[b[i]]++;
}
for(char c: s1){
if(freq1[c]!=freq2[c])return -1;
}
int maxi = dist-1;
for(int i=0; i<dist; i++)if(s1[i]==s2[i])maxi--;
return maxi;
}