#include <bits/stdc++.h>
#include "dna.h"
using namespace std;
int n;
vector<int> a, b, cnt;
vector<vector<int>> p1, p2;
void init(string A, string B) {
n = A.size();
a.resize(n);
b.resize(n);
for (int i = 0; i < n; i++) {
if (A[i] == 'A') {
a[i] = 0;
} else if (A[i] == 'T') {
a[i] = 1;
} else {
a[i] = 2;
}
if (B[i] == 'A') {
b[i] = 0;
} else if (B[i] == 'T') {
b[i] = 1;
} else {
b[i] = 2;
}
}
p1.resize(3, vector<int>(n + 1));
p2.resize(3, vector<int>(n + 1));
for (int i = 0; i < 3; i++) {
for (int j = 0; j < n; j++) {
p1[i][j + 1] = p1[i][j] + (a[j] == i);
p2[i][j + 1] = p2[i][j] + (b[j] == i);
}
}
cnt.resize(n + 1);
for (int i = 0; i < n; i++) {
cnt[i + 1] = cnt[i] + (a[i] == b[i]);
}
}
int get_distance(int l, int r) {
for (int i = 0; i < 3; i++) {
if (p1[i][r + 1] - p1[i][l] != p2[i][r + 1] - p2[i][l]) {
return -1;
}
}
int x = r - l + 1 - cnt[r + 1] + cnt[l];
return (x + 1) / 2;
}