Submission #1214261

#TimeUsernameProblemLanguageResultExecution timeMemory
1214261trimkusMutating DNA (IOI21_dna)C++20
0 / 100
31 ms2624 KiB
#include "dna.h" #include <bits/stdc++.h> using namespace std; map<char, int> mp; string a, b; void init(std::string _a, std::string _b) { a = _a; b = _b; mp['A'] = 0; mp['T'] = 1; mp['C'] = 2; } int get_distance(int x, int y) { vector<vector<int>> d1(3), d2(3); for (int i = x; i <= y; ++i) { d1[mp[a[i]]].push_back(i); d2[mp[b[i]]].push_back(i); } int res = 0; for (int i = 0; i < 3; ++i) { auto& v1 = d1[i]; auto& v2 = d2[i]; if (v1.size() != v2.size()) return -1; set<int> st; for (auto& u : v1) st.insert(u); for (auto& u : v2) { if (st.count(u)) continue; res += 1; } } // cerr << "[" << a.substr(x, y - x + 1) << " , " << b.substr(x, y - x + 1) << "] = " << res << "\n"; // assert(res % 2 == 0); return res - 1; }
#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...