# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
25613 | Extazy | Board (CEOI13_board) | C++14 | 3 ms | 2276 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>
using namespace std;
const int N = 1<<17;
struct node {
int level;
long long number;
node() {
level=0;
number=1;
}
void move(char a) {
if(a=='1') {
++level;
number=number*2;
}
else if(a=='2') {
++level;
number=number*2+1;
}
else if(a=='L') {
--number;
}
else if(a=='R') {
++number;
}
else { //a=='U'
--level;
number=number/2;
}
}
};
char a[N],b[N];
int n,m;
node node1,node2;
long long ans,curr;
int main() {
int i;
scanf("%s", a+1);
n=strlen(a+1);
scanf("%s", b+1);
m=strlen(b+1);
for(i=1;i<=n;i++) {
node1.move(a[i]);
}
for(i=1;i<=m;i++) {
node2.move(b[i]);
}
//ans=node1.level+node2.level;
//if(node1.level>=1 && node2.level>=1) ans=min(ans,node1.level+node2.level-1ll);
curr=0;
while(node1.level!=node2.level) {
if(node1.level>node2.level) ++curr,node1.move('U');
else ++curr,node2.move('U');
}
ans=curr+max(node1.number,node2.number)-min(node1.number,node2.number);
while(node1.level>0) {
curr+=2;
node1.move('U');
node2.move('U');
ans=min(ans,curr+max(node1.number,node2.number)-min(node1.number,node2.number));
}
printf("%lld\n", ans);
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... |