제출 #1144199

#제출 시각아이디문제언어결과실행 시간메모리
1144199mnbvcxz123Board (CEOI13_board)C++20
100 / 100
2 ms1220 KiB
#include <bits/stdc++.h> using namespace std; vector<int> get(const string &s) { vector<int> v; for (const char &c : s) { if (c == '1') v.push_back(0); if (c == '2') v.push_back(1); if (c == 'L') v.back()--; if (c == 'R') v.back()++; if (c == 'U') { int val = v.back(); v.pop_back(); v.back() += (val >> 1); } } for (int i = v.size() - 1; i > 0; i--) { int val = v[i] >> 1; v[i] -= (val << 1); v[i - 1] += val; } return v; } int main() { ios::sync_with_stdio(false); cin.tie(0); string sa, sb; cin >> sa >> sb; vector<int> a = get(sa), b = get(sb); int dif = 0, dist = a.size() + b.size(), ans = dist; for (int i = 0; i < min(a.size(), b.size()); i++) { dist -= 2; dif <<= 1, dif += a[i] - b[i]; int val = dist + abs(dif); if (val > 1e6) break; ans = min(ans, val); } cout << ans << "\n"; return 0; }
#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...
#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...