# |
Submission time |
Handle |
Problem |
Language |
Result |
Execution time |
Memory |
120071 |
2019-06-23T07:34:18 Z |
tjd229 |
None (JOI15_memory) |
C++14 |
|
2318 ms |
276876 KB |
#include "Memory_lib.h"
const int sq6 = 64;
const int sq7 = 128;
int concat(int l,int r,int op,int mode) {
return mode + (op << 2) + (r << 8) + (l << 15);
}
int Memory(int N, int M) {
if (N & 1) return -2;
int mode = M & 3; M >>= 2;
int op = M & (sq6 - 1); M >>= 6;
int r = M & (sq7 - 1); // i
int l = M >> 7; //j
if (r == N)
return op ? -2 : -1;
if (l >= N) return -2;
char c = Get(l + 1);
if (l == r) {
++l;
if (c == ']' || c == '>') {
if (--op < 0) return -2;
return concat(l,++r,op,mode);
}
else {
mode = (c == '[') + 1;
op = 1;
return concat(l, r, op, mode);
}
}
else {
switch (c) {
case '<':case '[':
++op;
break;
case '>':
--op;
if (op < 0) return -2;
if (l > r && op == 0) {
if (mode != 1) return -2;
return concat(0, ++r, op, 0);
}
break;
case ']':
--op;
if (op < 0) return -2;
if (l > r && op == 0) {
if (mode != 2) return -2;
return concat(0, ++r, op, 0);
}
break;
}
++l;
}
//op>50 chk
if (op > (N >> 1)) return -2;
return concat(l,r,op,mode);
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1975 ms |
276620 KB |
Output is correct |
2 |
Correct |
2318 ms |
276548 KB |
Output is correct |
3 |
Correct |
2027 ms |
276876 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1975 ms |
276620 KB |
Output is correct |
2 |
Correct |
2318 ms |
276548 KB |
Output is correct |
3 |
Correct |
2027 ms |
276876 KB |
Output is correct |
4 |
Correct |
2003 ms |
276728 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1975 ms |
276620 KB |
Output is correct |
2 |
Correct |
2318 ms |
276548 KB |
Output is correct |
3 |
Correct |
2027 ms |
276876 KB |
Output is correct |
4 |
Correct |
2003 ms |
276728 KB |
Output is correct |
5 |
Correct |
2083 ms |
276764 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1975 ms |
276620 KB |
Output is correct |
2 |
Correct |
2318 ms |
276548 KB |
Output is correct |
3 |
Correct |
2027 ms |
276876 KB |
Output is correct |
4 |
Correct |
2003 ms |
276728 KB |
Output is correct |
5 |
Correct |
2083 ms |
276764 KB |
Output is correct |
6 |
Correct |
2027 ms |
276672 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
2225 ms |
276692 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1975 ms |
276620 KB |
Output is correct |
2 |
Correct |
2318 ms |
276548 KB |
Output is correct |
3 |
Correct |
2027 ms |
276876 KB |
Output is correct |
4 |
Correct |
2003 ms |
276728 KB |
Output is correct |
5 |
Correct |
2083 ms |
276764 KB |
Output is correct |
6 |
Correct |
2027 ms |
276672 KB |
Output is correct |
7 |
Correct |
2225 ms |
276692 KB |
Output is correct |
8 |
Correct |
1977 ms |
276788 KB |
Output is correct |
9 |
Correct |
2222 ms |
276564 KB |
Output is correct |