Submission #60983

# Submission time Handle Problem Language Result Execution time Memory
60983 2018-07-25T05:12:44 Z khsoo01 Broken Device (JOI17_broken_device) C++11
51 / 100
82 ms 3800 KB
#include "Annalib.h"

const int A[8] = {6, 4, 7, 3, 1, 2, 5, 0};
const int B[8] = {3, 2, 1, 0, 1, 0, 0, 0};
const int C[8] = {2, 2, 2, 2, 1, 1, 1, 0};

int chk[155];

void Anna (int N, long long X, int K, int P[]) {
	for(int i=0;i<N;i++) {
		chk[i] = 0;
	}
	for(int i=0;i<K;i++) {
		chk[P[i]] = 1;
	}
	for(int i=0;i<50;i++) {
		int T = chk[3*i] * 1 + chk[3*i+1] * 2 + chk[3*i+2] * 4;
		for(int j=0;j<8;j++) {
			if((T & A[j]) || X % (1<<C[j]) != B[j]) continue;
			for(int k=0;k<3;k++) {
				Set(3*i+k, !!(A[j]&(1<<k)));
			}
			X /= (1<<C[j]);
			break;
		}
	}
}
#include "Brunolib.h"

const int A[8] = {6, 4, 7, 3, 1, 2, 5, 0};
const int B[8] = {3, 2, 1, 0, 1, 0, 0, 0};
const int C[8] = {2, 2, 2, 2, 1, 1, 1, 0};

long long Bruno (int N, int P[]) {
	long long ret = 0, bit = 1;
	for(int i=0;i<50;i++) {
		int T = P[3*i] * 1 + P[3*i+1] * 2 + P[3*i+2] * 4;
		for(int j=0;j<8;j++) {
			if(T != A[j]) continue;
			ret += bit * B[j];
			bit *= (1<<C[j]);
			break;
		}
	}
	return ret;
}
# Verdict Execution time Memory Grader output
1 Partially correct 64 ms 3056 KB Output is partially correct - L* = 25
2 Partially correct 56 ms 3224 KB Output is partially correct - L* = 29
3 Partially correct 51 ms 3272 KB Output is partially correct - L* = 21
4 Partially correct 53 ms 3304 KB Output is partially correct - L* = 25
5 Partially correct 80 ms 3312 KB Output is partially correct - L* = 24
6 Partially correct 62 ms 3312 KB Output is partially correct - L* = 24
7 Partially correct 53 ms 3312 KB Output is partially correct - L* = 27
8 Partially correct 54 ms 3312 KB Output is partially correct - L* = 24
9 Partially correct 49 ms 3448 KB Output is partially correct - L* = 24
10 Partially correct 62 ms 3448 KB Output is partially correct - L* = 24
11 Partially correct 57 ms 3448 KB Output is partially correct - L* = 24
12 Partially correct 59 ms 3520 KB Output is partially correct - L* = 22
13 Partially correct 52 ms 3520 KB Output is partially correct - L* = 21
14 Partially correct 57 ms 3520 KB Output is partially correct - L* = 23
15 Partially correct 62 ms 3520 KB Output is partially correct - L* = 23
16 Partially correct 82 ms 3600 KB Output is partially correct - L* = 21
17 Partially correct 46 ms 3600 KB Output is partially correct - L* = 21
18 Partially correct 53 ms 3600 KB Output is partially correct - L* = 21
19 Partially correct 61 ms 3600 KB Output is partially correct - L* = 22
20 Partially correct 82 ms 3600 KB Output is partially correct - L* = 22
21 Partially correct 59 ms 3744 KB Output is partially correct - L* = 22
22 Partially correct 81 ms 3744 KB Output is partially correct - L* = 21
23 Partially correct 61 ms 3744 KB Output is partially correct - L* = 25
24 Partially correct 59 ms 3744 KB Output is partially correct - L* = 21
25 Partially correct 56 ms 3744 KB Output is partially correct - L* = 22
26 Partially correct 56 ms 3744 KB Output is partially correct - L* = 22
27 Partially correct 63 ms 3744 KB Output is partially correct - L* = 20
28 Partially correct 53 ms 3744 KB Output is partially correct - L* = 26
29 Partially correct 67 ms 3744 KB Output is partially correct - L* = 22
30 Partially correct 48 ms 3744 KB Output is partially correct - L* = 27
31 Partially correct 45 ms 3744 KB Output is partially correct - L* = 28
32 Partially correct 55 ms 3744 KB Output is partially correct - L* = 26
33 Partially correct 47 ms 3744 KB Output is partially correct - L* = 20
34 Partially correct 49 ms 3744 KB Output is partially correct - L* = 20
35 Partially correct 52 ms 3744 KB Output is partially correct - L* = 23
36 Partially correct 64 ms 3744 KB Output is partially correct - L* = 24
37 Partially correct 56 ms 3744 KB Output is partially correct - L* = 25
38 Partially correct 79 ms 3744 KB Output is partially correct - L* = 26
39 Partially correct 80 ms 3800 KB Output is partially correct - L* = 22
40 Partially correct 76 ms 3800 KB Output is partially correct - L* = 21