Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <iostream>#include <vector>#include <map>#include <unordered_map>#include <set>#include <unordered_set>#include <stack>#include <queue>#include <algorithm>#include <limits.h>#include <functional>#include <string>using namespace std;const int N = 100000;long long n, a, b;int x[N], y[N];int res = 0;unordered_map<int, int> mp;string s, sa, sb;;bool flag = false;void dfs(string& cur, string sb, int step) {//if (flag)return;if (cur == sb) {flag = true;res = min(res, step);return;}for (int i = 0; i < n; i++) {