# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
62424 | Nnandi | 게임판 (CEOI13_board) | C++14 | 1081 ms | 2492 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#define INF 1000000000
using namespace std;
string s1, s2;
vector<bool> v1, v2;
void get_exp(string &str, vector<bool> &vb) {
vb.push_back(true);
for(char c:str) {
if(c=='1') {
vb.push_back(false);
}
if(c=='2') {
vb.push_back(true);
}
if(c=='U') {
vb.resize(vb.size()-1);
}
if(c=='R') {
int it=vb.size()-1;
while(it >= 0 && vb[it] == true) {
it--;
}
vb[it]=true;
it++;
for(;it<vb.size();it++) {
vb[it] =false;
}
}
if(c=='L') {
int it=vb.size()-1;
while(it >= 0 && vb[it] == false) {
it--;
}
vb[it]=false;
it++;
for(;it<vb.size();it++) {
vb[it] =true;
}
}
}
return;
}
int main()
{
ios_base::sync_with_stdio(false);
cin>>s1;
cin>>s2;
get_exp(s1,v1);
get_exp(s2,v2);
int dist_min = v1.size() -1 + v2.size() -1;
bool kell = true;
int elt = 0;
for(int i=0;i<min(v1.size(),v2.size()) && kell;i++) {
elt *= 2;
if(v2[i] && !v1[i]) {
elt ++;
}
if(!v2[i] && v1[i]) {
elt --;
}
int now_cost = v1.size() + v2.size() - 2*(i+1) + abs(elt);
if(dist_min > now_cost) {
dist_min = now_cost;
}
if(now_cost > INF) {
kell = false;
}
}
cout<<dist_min<<endl;
return 0;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |