Submission #996784

#TimeUsernameProblemLanguageResultExecution timeMemory
996784overwatch9Mutating DNA (IOI21_dna)C++17
0 / 100
167 ms2372 KiB
#include "dna.h" #include <bits/stdc++.h> using namespace std; using ll = long long; string A, B; void init(std::string a, std::string b) { A = a; B = b; } int get_distance(int x, int y) { string a = A.substr(x, y - x + 1); string b = B.substr(x, y - x + 1); sort(a.begin(), a.end()); sort(b.begin(), b.end()); if (a != b) return -1; a = A.substr(x, y - x + 1); b = B.substr(x, y - x + 1); vector <int> ord = {0, 0, 1, 1, 2, 2}; int ans = 1e9; do { int tp = 0; string tpb = b; for (int i = 0; i+1 < 3; i++) { if (a == b) break; swap(tpb[ord[i]], tpb[ord[i+1]]); tp++; } if (a == tpb) ans = min(ans, tp); } while (next_permutation(ord.begin(), ord.end())); return ans; }
#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...