# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1037232 | DeathIsAwe | 기억 압축 (JOI15_memory) | C++14 | 1455 ms | 284220 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "Memory_lib.h"
#include <bits/stdc++.h>
using namespace std;
int Memory(int n, int m) {
if (n % 2 == 1) {
return -2;
}
if (n > 14) {
return 0;
}
int states = m;
int pos = states % 16; states /= 16;
int type = states % 4; states /= 4;
vector<int> statesvec;
for (int i=0;i<n;i++) {
statesvec.push_back(states % 2);
states /= 2;
}
char current;
int prevpos = pos - 1, returnval = 0;
while (pos <= n-1 && statesvec[pos] == 1) {
pos++;
}
if (pos > n-1) {
return -2;
} else {
current = Get(pos + 1);
if (current == '[') {
type = 1;
pos++;
} else if (current == '<') {
type = 2;
pos++;
} else if ((current == ']' && type == 1) || (current == '>' && type == 2)) {
statesvec[prevpos] = 1;
statesvec[pos] = 1;
pos = 0;
type = 0;
} else {
type = 0;
pos++;
}
}
if (pos > n-1) {
return -2;
}
if (count(statesvec.begin(), statesvec.end(), 1) == statesvec.size()) {
return -1;
}
for (int i=0;i<n;i++) {
//cout << statesvec[i] << ' ';
if (statesvec[i] == 1) {
returnval += pow(2, i);
}
}
//cout << '\n';
returnval *= 64;
returnval += type * 16;
returnval += pos;
//cout << returnval << '\n';
return returnval;
}
/*
int Memory(int n, int m) {
if (n % 2 == 1) {
return -2;
}
int bruh = 0, val;
if (m % 100 + 1 > n) {
return 0;
}
char now = Get(m % 100 + 1);
if (now == '<') {
bruh++;
}
bruh += (m / 100);
if (bruh > 201) {
return 0;
}
if (2 * bruh < (m % 100 + 1)) {
return -2;
}
if (m % 100 == n - 1) {
if (2 * bruh == n) {
return -1;
} else {
return -2;
}
}
val = (m % 100) + (bruh * 100) + 1;
return val;
}
*/
컴파일 시 표준 에러 (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... |