답안 #104138

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
104138 2019-04-04T08:00:09 Z hugo_pm Paint By Numbers (IOI16_paint) C++17
100 / 100
676 ms 201336 KB
#include "paint.h"
#include <bits/stdc++.h>
using namespace std;

#define form2(i, a, b) for (int i = (a); i < (b); ++i)
#define ford2(i, a, b) for (int i = (a-1); i >= b; --i)
#define form(i, n) form2(i, 0, n)
#define ford(i, n) ford2(i, n, 0)

#define chmax(x, v) x = max(x, (v))
#define chmin(x, v) x = min(x, (v))
#define fi first
#define se second

const int INF = (int)(1e9);

typedef long long ll;
typedef long double ld;
typedef pair<int, int> pii;

const int maxLen = 200005;
const int maxBlocs = 105;

const int BOTH=0, ON=1, OFF=2;
int info[maxLen];
int rep[maxLen];

int lenJeu, nbBlocs;
vector<int> blocs;

bool dp[2][maxBlocs][maxLen];
int gl[3][maxLen];

int drap[maxBlocs][maxLen];
int prdrap[maxBlocs][maxLen];

void proc(int mode, int blocsPris, int elemPris)
{
	bool &ans = dp[mode][blocsPris][elemPris];
	int curElem = elemPris-1;
	int curBloc = blocsPris-1;

	if (blocsPris == 0) {
		if (elemPris == 0) ans = true;
		else if (info[curElem] == ON) ans = false;
		else ans = dp[mode][blocsPris][elemPris-1];
		return;
	}

	if (elemPris == 0) {
		ans = false;
		return;
	}

	ans = false;
	int debPoseIci = curElem - blocs[curBloc] + 1;
	if (debPoseIci > gl[OFF][curElem]) { // Peut poser un bloc finissant en curElem
		bool ww = false;
		if (debPoseIci == 0) ww = (blocsPris == 1);
		else ww = (info[debPoseIci-1] != ON && dp[mode][blocsPris-1][debPoseIci-1]);
		bool w2 = ww;
		if (debPoseIci > 0) w2 = (ww && info[debPoseIci-1] != ON);
		if (mode == 0 && w2) drap[curBloc][curElem] = 1;
		ans |= ww;
	}
	if (info[curElem] != ON) {
		ans |= dp[mode][blocsPris][elemPris-1];
	}
}

bool tmp[maxLen][maxBlocs];

void comp(int mode)
{
	form(mode, 3) {
		int lst = -1;
		form(i, lenJeu) {
			if (info[i] == mode) lst = i;
			gl[mode][i] = lst;
		}
	}
	form(i, nbBlocs+1) {
		form(j, lenJeu+1) {
			proc(mode, i, j);
		}
	}
}

void doubleComp()
{
	comp(0);
	reverse(info, info+lenJeu);
	reverse(blocs.begin(), blocs.end());
	comp(1);
	reverse(info, info+lenJeu);
	reverse(blocs.begin(), blocs.end());

}

bool canOFF(int indElem)
{
	if (info[indElem] == ON) return false;
	form(blocsGauche, nbBlocs+1) {
		int blocsDroite = nbBlocs - blocsGauche;
		int rev = lenJeu - (indElem+1);
		if (dp[0][blocsGauche][indElem] && dp[1][blocsDroite][rev]) return true;
	}
	return false;
}

bool canON(int indElem) {
	if (info[indElem] == OFF) return false;
	form(curBloc, nbBlocs) {
		int sz = blocs[curBloc];
		int dt = indElem, ft = min(indElem+sz-1, lenJeu-1);
		int cc = prdrap[curBloc][ft];
		if (dt) cc -= prdrap[curBloc][dt-1];
		if (cc > 0) return true;
	}
	return false;
}

void solve()
{
	doubleComp();

	form(i, nbBlocs) {
		form(j, lenJeu) if (drap[i][j]) {
			int rstBloc = nbBlocs-(i+1);
			int rstElem = lenJeu-(j+1);
			bool ww = false;
			if (rstElem == 0) ww = (rstBloc == 0);
			else if (rstBloc == 0) ww = dp[1][rstBloc][rstElem];
			else ww = (info[j+1] != ON && dp[1][rstBloc][rstElem-1]);
			if (!ww) drap[i][j] = 0;
		}
	}
	form(i, nbBlocs) {
		prdrap[i][0] = drap[i][0];
		form2(j, 1, lenJeu) {
			prdrap[i][j] = prdrap[i][j-1] + drap[i][j];
		}
	}


	form(i, lenJeu) {
		bool cal = canON(i), cet = canOFF(i);
		assert(cal || cet);
		if (cal && cet) rep[i] = BOTH;
		else if (cal) rep[i] = ON;
		else if (cet) rep[i] = OFF;
	}
}

string solve_puzzle(std::string s, std::vector<int> c) {
	lenJeu = s.length();
	nbBlocs = c.size();
	blocs = c;

	form(i, lenJeu) {
		if (s[i] == '.') info[i] = BOTH;
		else if (s[i] == 'X') info[i] = ON;
		else info[i] = OFF;
	}
	solve();
	form(i, lenJeu) {
		if (rep[i] == BOTH) s[i] = '?';
		else if (rep[i] == ON) s[i] = 'X';
		else s[i] = '_';	
	}
	return s;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 384 KB n = 13, m = 1
2 Correct 3 ms 384 KB n = 18, m = 1
3 Correct 2 ms 384 KB n = 17, m = 1
4 Correct 2 ms 384 KB n = 1, m = 1
5 Correct 3 ms 384 KB n = 20, m = 1
6 Correct 2 ms 432 KB n = 20, m = 1
7 Correct 3 ms 384 KB n = 20, m = 1
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 384 KB n = 13, m = 1
2 Correct 3 ms 384 KB n = 18, m = 1
3 Correct 2 ms 384 KB n = 17, m = 1
4 Correct 2 ms 384 KB n = 1, m = 1
5 Correct 3 ms 384 KB n = 20, m = 1
6 Correct 2 ms 432 KB n = 20, m = 1
7 Correct 3 ms 384 KB n = 20, m = 1
8 Correct 3 ms 512 KB n = 20, m = 5
9 Correct 2 ms 384 KB n = 18, m = 3
10 Correct 3 ms 384 KB n = 17, m = 2
11 Correct 4 ms 384 KB n = 20, m = 2
12 Correct 3 ms 512 KB n = 17, m = 4
13 Correct 2 ms 512 KB n = 17, m = 6
14 Correct 2 ms 356 KB n = 17, m = 1
15 Correct 2 ms 512 KB n = 17, m = 4
16 Correct 3 ms 512 KB n = 13, m = 3
17 Correct 2 ms 512 KB n = 18, m = 4
18 Correct 2 ms 640 KB n = 20, m = 10
19 Correct 3 ms 640 KB n = 19, m = 10
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 384 KB n = 13, m = 1
2 Correct 3 ms 384 KB n = 18, m = 1
3 Correct 2 ms 384 KB n = 17, m = 1
4 Correct 2 ms 384 KB n = 1, m = 1
5 Correct 3 ms 384 KB n = 20, m = 1
6 Correct 2 ms 432 KB n = 20, m = 1
7 Correct 3 ms 384 KB n = 20, m = 1
8 Correct 3 ms 512 KB n = 20, m = 5
9 Correct 2 ms 384 KB n = 18, m = 3
10 Correct 3 ms 384 KB n = 17, m = 2
11 Correct 4 ms 384 KB n = 20, m = 2
12 Correct 3 ms 512 KB n = 17, m = 4
13 Correct 2 ms 512 KB n = 17, m = 6
14 Correct 2 ms 356 KB n = 17, m = 1
15 Correct 2 ms 512 KB n = 17, m = 4
16 Correct 3 ms 512 KB n = 13, m = 3
17 Correct 2 ms 512 KB n = 18, m = 4
18 Correct 2 ms 640 KB n = 20, m = 10
19 Correct 3 ms 640 KB n = 19, m = 10
20 Correct 2 ms 512 KB n = 100, m = 5
21 Correct 2 ms 384 KB n = 90, m = 3
22 Correct 3 ms 384 KB n = 86, m = 2
23 Correct 4 ms 512 KB n = 81, m = 4
24 Correct 4 ms 512 KB n = 89, m = 10
25 Correct 3 ms 768 KB n = 81, m = 23
26 Correct 2 ms 512 KB n = 86, m = 8
27 Correct 2 ms 768 KB n = 53, m = 22
28 Correct 3 ms 1024 KB n = 89, m = 35
29 Correct 4 ms 896 KB n = 63, m = 25
30 Correct 0 ms 1408 KB n = 100, m = 50
31 Correct 4 ms 1408 KB n = 99, m = 50
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 384 KB n = 13, m = 1
2 Correct 3 ms 384 KB n = 18, m = 1
3 Correct 2 ms 384 KB n = 17, m = 1
4 Correct 2 ms 384 KB n = 1, m = 1
5 Correct 3 ms 384 KB n = 20, m = 1
6 Correct 2 ms 432 KB n = 20, m = 1
7 Correct 3 ms 384 KB n = 20, m = 1
8 Correct 3 ms 512 KB n = 20, m = 5
9 Correct 2 ms 384 KB n = 18, m = 3
10 Correct 3 ms 384 KB n = 17, m = 2
11 Correct 4 ms 384 KB n = 20, m = 2
12 Correct 3 ms 512 KB n = 17, m = 4
13 Correct 2 ms 512 KB n = 17, m = 6
14 Correct 2 ms 356 KB n = 17, m = 1
15 Correct 2 ms 512 KB n = 17, m = 4
16 Correct 3 ms 512 KB n = 13, m = 3
17 Correct 2 ms 512 KB n = 18, m = 4
18 Correct 2 ms 640 KB n = 20, m = 10
19 Correct 3 ms 640 KB n = 19, m = 10
20 Correct 2 ms 512 KB n = 100, m = 5
21 Correct 2 ms 384 KB n = 90, m = 3
22 Correct 3 ms 384 KB n = 86, m = 2
23 Correct 4 ms 512 KB n = 81, m = 4
24 Correct 4 ms 512 KB n = 89, m = 10
25 Correct 3 ms 768 KB n = 81, m = 23
26 Correct 2 ms 512 KB n = 86, m = 8
27 Correct 2 ms 768 KB n = 53, m = 22
28 Correct 3 ms 1024 KB n = 89, m = 35
29 Correct 4 ms 896 KB n = 63, m = 25
30 Correct 0 ms 1408 KB n = 100, m = 50
31 Correct 4 ms 1408 KB n = 99, m = 50
32 Correct 2 ms 384 KB n = 13, m = 4
33 Correct 3 ms 440 KB n = 86, m = 2
34 Correct 2 ms 384 KB n = 88, m = 2
35 Correct 2 ms 384 KB n = 86, m = 2
36 Correct 2 ms 512 KB n = 81, m = 6
37 Correct 2 ms 512 KB n = 98, m = 7
38 Correct 2 ms 640 KB n = 92, m = 7
39 Correct 3 ms 768 KB n = 88, m = 21
40 Correct 3 ms 768 KB n = 90, m = 21
41 Correct 3 ms 896 KB n = 98, m = 22
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 384 KB n = 13, m = 1
2 Correct 3 ms 384 KB n = 18, m = 1
3 Correct 2 ms 384 KB n = 17, m = 1
4 Correct 2 ms 384 KB n = 1, m = 1
5 Correct 3 ms 384 KB n = 20, m = 1
6 Correct 2 ms 432 KB n = 20, m = 1
7 Correct 3 ms 384 KB n = 20, m = 1
8 Correct 3 ms 512 KB n = 20, m = 5
9 Correct 2 ms 384 KB n = 18, m = 3
10 Correct 3 ms 384 KB n = 17, m = 2
11 Correct 4 ms 384 KB n = 20, m = 2
12 Correct 3 ms 512 KB n = 17, m = 4
13 Correct 2 ms 512 KB n = 17, m = 6
14 Correct 2 ms 356 KB n = 17, m = 1
15 Correct 2 ms 512 KB n = 17, m = 4
16 Correct 3 ms 512 KB n = 13, m = 3
17 Correct 2 ms 512 KB n = 18, m = 4
18 Correct 2 ms 640 KB n = 20, m = 10
19 Correct 3 ms 640 KB n = 19, m = 10
20 Correct 2 ms 512 KB n = 100, m = 5
21 Correct 2 ms 384 KB n = 90, m = 3
22 Correct 3 ms 384 KB n = 86, m = 2
23 Correct 4 ms 512 KB n = 81, m = 4
24 Correct 4 ms 512 KB n = 89, m = 10
25 Correct 3 ms 768 KB n = 81, m = 23
26 Correct 2 ms 512 KB n = 86, m = 8
27 Correct 2 ms 768 KB n = 53, m = 22
28 Correct 3 ms 1024 KB n = 89, m = 35
29 Correct 4 ms 896 KB n = 63, m = 25
30 Correct 0 ms 1408 KB n = 100, m = 50
31 Correct 4 ms 1408 KB n = 99, m = 50
32 Correct 2 ms 384 KB n = 13, m = 4
33 Correct 3 ms 440 KB n = 86, m = 2
34 Correct 2 ms 384 KB n = 88, m = 2
35 Correct 2 ms 384 KB n = 86, m = 2
36 Correct 2 ms 512 KB n = 81, m = 6
37 Correct 2 ms 512 KB n = 98, m = 7
38 Correct 2 ms 640 KB n = 92, m = 7
39 Correct 3 ms 768 KB n = 88, m = 21
40 Correct 3 ms 768 KB n = 90, m = 21
41 Correct 3 ms 896 KB n = 98, m = 22
42 Correct 3 ms 384 KB n = 11, m = 2
43 Correct 2 ms 384 KB n = 11, m = 2
44 Correct 3 ms 512 KB n = 13, m = 3
45 Correct 2 ms 384 KB n = 86, m = 2
46 Correct 2 ms 384 KB n = 81, m = 2
47 Correct 2 ms 384 KB n = 93, m = 2
48 Correct 2 ms 384 KB n = 81, m = 2
49 Correct 2 ms 384 KB n = 86, m = 2
50 Correct 2 ms 384 KB n = 90, m = 2
51 Correct 3 ms 384 KB n = 87, m = 2
52 Correct 2 ms 384 KB n = 97, m = 2
53 Correct 2 ms 384 KB n = 85, m = 2
54 Correct 3 ms 512 KB n = 88, m = 7
55 Correct 3 ms 512 KB n = 96, m = 7
56 Correct 2 ms 512 KB n = 85, m = 7
57 Correct 3 ms 512 KB n = 92, m = 7
58 Correct 2 ms 512 KB n = 92, m = 7
59 Correct 2 ms 512 KB n = 86, m = 7
60 Correct 2 ms 512 KB n = 87, m = 7
61 Correct 3 ms 512 KB n = 100, m = 7
62 Correct 3 ms 512 KB n = 100, m = 7
63 Correct 3 ms 768 KB n = 92, m = 21
64 Correct 3 ms 768 KB n = 93, m = 22
65 Correct 2 ms 768 KB n = 95, m = 22
66 Correct 3 ms 768 KB n = 98, m = 22
67 Correct 3 ms 768 KB n = 94, m = 22
68 Correct 2 ms 896 KB n = 93, m = 22
69 Correct 3 ms 768 KB n = 88, m = 21
70 Correct 3 ms 768 KB n = 83, m = 20
71 Correct 3 ms 896 KB n = 99, m = 23
72 Correct 4 ms 768 KB n = 96, m = 19
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 384 KB n = 13, m = 1
2 Correct 3 ms 384 KB n = 18, m = 1
3 Correct 2 ms 384 KB n = 17, m = 1
4 Correct 2 ms 384 KB n = 1, m = 1
5 Correct 3 ms 384 KB n = 20, m = 1
6 Correct 2 ms 432 KB n = 20, m = 1
7 Correct 3 ms 384 KB n = 20, m = 1
8 Correct 3 ms 512 KB n = 20, m = 5
9 Correct 2 ms 384 KB n = 18, m = 3
10 Correct 3 ms 384 KB n = 17, m = 2
11 Correct 4 ms 384 KB n = 20, m = 2
12 Correct 3 ms 512 KB n = 17, m = 4
13 Correct 2 ms 512 KB n = 17, m = 6
14 Correct 2 ms 356 KB n = 17, m = 1
15 Correct 2 ms 512 KB n = 17, m = 4
16 Correct 3 ms 512 KB n = 13, m = 3
17 Correct 2 ms 512 KB n = 18, m = 4
18 Correct 2 ms 640 KB n = 20, m = 10
19 Correct 3 ms 640 KB n = 19, m = 10
20 Correct 2 ms 512 KB n = 100, m = 5
21 Correct 2 ms 384 KB n = 90, m = 3
22 Correct 3 ms 384 KB n = 86, m = 2
23 Correct 4 ms 512 KB n = 81, m = 4
24 Correct 4 ms 512 KB n = 89, m = 10
25 Correct 3 ms 768 KB n = 81, m = 23
26 Correct 2 ms 512 KB n = 86, m = 8
27 Correct 2 ms 768 KB n = 53, m = 22
28 Correct 3 ms 1024 KB n = 89, m = 35
29 Correct 4 ms 896 KB n = 63, m = 25
30 Correct 0 ms 1408 KB n = 100, m = 50
31 Correct 4 ms 1408 KB n = 99, m = 50
32 Correct 2 ms 384 KB n = 13, m = 4
33 Correct 3 ms 440 KB n = 86, m = 2
34 Correct 2 ms 384 KB n = 88, m = 2
35 Correct 2 ms 384 KB n = 86, m = 2
36 Correct 2 ms 512 KB n = 81, m = 6
37 Correct 2 ms 512 KB n = 98, m = 7
38 Correct 2 ms 640 KB n = 92, m = 7
39 Correct 3 ms 768 KB n = 88, m = 21
40 Correct 3 ms 768 KB n = 90, m = 21
41 Correct 3 ms 896 KB n = 98, m = 22
42 Correct 3 ms 384 KB n = 11, m = 2
43 Correct 2 ms 384 KB n = 11, m = 2
44 Correct 3 ms 512 KB n = 13, m = 3
45 Correct 2 ms 384 KB n = 86, m = 2
46 Correct 2 ms 384 KB n = 81, m = 2
47 Correct 2 ms 384 KB n = 93, m = 2
48 Correct 2 ms 384 KB n = 81, m = 2
49 Correct 2 ms 384 KB n = 86, m = 2
50 Correct 2 ms 384 KB n = 90, m = 2
51 Correct 3 ms 384 KB n = 87, m = 2
52 Correct 2 ms 384 KB n = 97, m = 2
53 Correct 2 ms 384 KB n = 85, m = 2
54 Correct 3 ms 512 KB n = 88, m = 7
55 Correct 3 ms 512 KB n = 96, m = 7
56 Correct 2 ms 512 KB n = 85, m = 7
57 Correct 3 ms 512 KB n = 92, m = 7
58 Correct 2 ms 512 KB n = 92, m = 7
59 Correct 2 ms 512 KB n = 86, m = 7
60 Correct 2 ms 512 KB n = 87, m = 7
61 Correct 3 ms 512 KB n = 100, m = 7
62 Correct 3 ms 512 KB n = 100, m = 7
63 Correct 3 ms 768 KB n = 92, m = 21
64 Correct 3 ms 768 KB n = 93, m = 22
65 Correct 2 ms 768 KB n = 95, m = 22
66 Correct 3 ms 768 KB n = 98, m = 22
67 Correct 3 ms 768 KB n = 94, m = 22
68 Correct 2 ms 896 KB n = 93, m = 22
69 Correct 3 ms 768 KB n = 88, m = 21
70 Correct 3 ms 768 KB n = 83, m = 20
71 Correct 3 ms 896 KB n = 99, m = 23
72 Correct 4 ms 768 KB n = 96, m = 19
73 Correct 3 ms 768 KB n = 4825, m = 5
74 Correct 4 ms 640 KB n = 4384, m = 5
75 Correct 3 ms 768 KB n = 4528, m = 5
76 Correct 4 ms 640 KB n = 4980, m = 5
77 Correct 3 ms 768 KB n = 4730, m = 5
78 Correct 3 ms 768 KB n = 4784, m = 5
79 Correct 3 ms 768 KB n = 4875, m = 5
80 Correct 4 ms 768 KB n = 4576, m = 5
81 Correct 3 ms 768 KB n = 4297, m = 5
82 Correct 9 ms 2688 KB n = 4662, m = 48
83 Correct 11 ms 2816 KB n = 4753, m = 49
84 Correct 11 ms 2620 KB n = 4148, m = 46
85 Correct 10 ms 2944 KB n = 4906, m = 50
86 Correct 10 ms 2988 KB n = 4967, m = 50
87 Correct 11 ms 2944 KB n = 4828, m = 49
88 Correct 7 ms 2432 KB n = 4105, m = 45
89 Correct 9 ms 3072 KB n = 4954, m = 50
90 Correct 11 ms 3328 KB n = 4884, m = 49
91 Correct 17 ms 4992 KB n = 4307, m = 100
92 Correct 21 ms 5240 KB n = 4668, m = 100
93 Correct 21 ms 5264 KB n = 4647, m = 100
94 Correct 15 ms 5040 KB n = 4372, m = 100
95 Correct 18 ms 5376 KB n = 4791, m = 100
96 Correct 16 ms 5112 KB n = 4029, m = 100
97 Correct 13 ms 5120 KB n = 4439, m = 100
98 Correct 19 ms 5404 KB n = 4018, m = 100
99 Correct 22 ms 6272 KB n = 4979, m = 100
100 Correct 16 ms 5120 KB n = 4996, m = 89
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 384 KB n = 13, m = 1
2 Correct 3 ms 384 KB n = 18, m = 1
3 Correct 2 ms 384 KB n = 17, m = 1
4 Correct 2 ms 384 KB n = 1, m = 1
5 Correct 3 ms 384 KB n = 20, m = 1
6 Correct 2 ms 432 KB n = 20, m = 1
7 Correct 3 ms 384 KB n = 20, m = 1
8 Correct 3 ms 512 KB n = 20, m = 5
9 Correct 2 ms 384 KB n = 18, m = 3
10 Correct 3 ms 384 KB n = 17, m = 2
11 Correct 4 ms 384 KB n = 20, m = 2
12 Correct 3 ms 512 KB n = 17, m = 4
13 Correct 2 ms 512 KB n = 17, m = 6
14 Correct 2 ms 356 KB n = 17, m = 1
15 Correct 2 ms 512 KB n = 17, m = 4
16 Correct 3 ms 512 KB n = 13, m = 3
17 Correct 2 ms 512 KB n = 18, m = 4
18 Correct 2 ms 640 KB n = 20, m = 10
19 Correct 3 ms 640 KB n = 19, m = 10
20 Correct 2 ms 512 KB n = 100, m = 5
21 Correct 2 ms 384 KB n = 90, m = 3
22 Correct 3 ms 384 KB n = 86, m = 2
23 Correct 4 ms 512 KB n = 81, m = 4
24 Correct 4 ms 512 KB n = 89, m = 10
25 Correct 3 ms 768 KB n = 81, m = 23
26 Correct 2 ms 512 KB n = 86, m = 8
27 Correct 2 ms 768 KB n = 53, m = 22
28 Correct 3 ms 1024 KB n = 89, m = 35
29 Correct 4 ms 896 KB n = 63, m = 25
30 Correct 0 ms 1408 KB n = 100, m = 50
31 Correct 4 ms 1408 KB n = 99, m = 50
32 Correct 2 ms 384 KB n = 13, m = 4
33 Correct 3 ms 440 KB n = 86, m = 2
34 Correct 2 ms 384 KB n = 88, m = 2
35 Correct 2 ms 384 KB n = 86, m = 2
36 Correct 2 ms 512 KB n = 81, m = 6
37 Correct 2 ms 512 KB n = 98, m = 7
38 Correct 2 ms 640 KB n = 92, m = 7
39 Correct 3 ms 768 KB n = 88, m = 21
40 Correct 3 ms 768 KB n = 90, m = 21
41 Correct 3 ms 896 KB n = 98, m = 22
42 Correct 3 ms 384 KB n = 11, m = 2
43 Correct 2 ms 384 KB n = 11, m = 2
44 Correct 3 ms 512 KB n = 13, m = 3
45 Correct 2 ms 384 KB n = 86, m = 2
46 Correct 2 ms 384 KB n = 81, m = 2
47 Correct 2 ms 384 KB n = 93, m = 2
48 Correct 2 ms 384 KB n = 81, m = 2
49 Correct 2 ms 384 KB n = 86, m = 2
50 Correct 2 ms 384 KB n = 90, m = 2
51 Correct 3 ms 384 KB n = 87, m = 2
52 Correct 2 ms 384 KB n = 97, m = 2
53 Correct 2 ms 384 KB n = 85, m = 2
54 Correct 3 ms 512 KB n = 88, m = 7
55 Correct 3 ms 512 KB n = 96, m = 7
56 Correct 2 ms 512 KB n = 85, m = 7
57 Correct 3 ms 512 KB n = 92, m = 7
58 Correct 2 ms 512 KB n = 92, m = 7
59 Correct 2 ms 512 KB n = 86, m = 7
60 Correct 2 ms 512 KB n = 87, m = 7
61 Correct 3 ms 512 KB n = 100, m = 7
62 Correct 3 ms 512 KB n = 100, m = 7
63 Correct 3 ms 768 KB n = 92, m = 21
64 Correct 3 ms 768 KB n = 93, m = 22
65 Correct 2 ms 768 KB n = 95, m = 22
66 Correct 3 ms 768 KB n = 98, m = 22
67 Correct 3 ms 768 KB n = 94, m = 22
68 Correct 2 ms 896 KB n = 93, m = 22
69 Correct 3 ms 768 KB n = 88, m = 21
70 Correct 3 ms 768 KB n = 83, m = 20
71 Correct 3 ms 896 KB n = 99, m = 23
72 Correct 4 ms 768 KB n = 96, m = 19
73 Correct 3 ms 768 KB n = 4825, m = 5
74 Correct 4 ms 640 KB n = 4384, m = 5
75 Correct 3 ms 768 KB n = 4528, m = 5
76 Correct 4 ms 640 KB n = 4980, m = 5
77 Correct 3 ms 768 KB n = 4730, m = 5
78 Correct 3 ms 768 KB n = 4784, m = 5
79 Correct 3 ms 768 KB n = 4875, m = 5
80 Correct 4 ms 768 KB n = 4576, m = 5
81 Correct 3 ms 768 KB n = 4297, m = 5
82 Correct 9 ms 2688 KB n = 4662, m = 48
83 Correct 11 ms 2816 KB n = 4753, m = 49
84 Correct 11 ms 2620 KB n = 4148, m = 46
85 Correct 10 ms 2944 KB n = 4906, m = 50
86 Correct 10 ms 2988 KB n = 4967, m = 50
87 Correct 11 ms 2944 KB n = 4828, m = 49
88 Correct 7 ms 2432 KB n = 4105, m = 45
89 Correct 9 ms 3072 KB n = 4954, m = 50
90 Correct 11 ms 3328 KB n = 4884, m = 49
91 Correct 17 ms 4992 KB n = 4307, m = 100
92 Correct 21 ms 5240 KB n = 4668, m = 100
93 Correct 21 ms 5264 KB n = 4647, m = 100
94 Correct 15 ms 5040 KB n = 4372, m = 100
95 Correct 18 ms 5376 KB n = 4791, m = 100
96 Correct 16 ms 5112 KB n = 4029, m = 100
97 Correct 13 ms 5120 KB n = 4439, m = 100
98 Correct 19 ms 5404 KB n = 4018, m = 100
99 Correct 22 ms 6272 KB n = 4979, m = 100
100 Correct 16 ms 5120 KB n = 4996, m = 89
101 Correct 62 ms 15760 KB n = 178952, m = 10
102 Correct 70 ms 15928 KB n = 180674, m = 10
103 Correct 63 ms 14708 KB n = 167639, m = 10
104 Correct 54 ms 15172 KB n = 172892, m = 10
105 Correct 56 ms 14824 KB n = 168125, m = 10
106 Correct 60 ms 14584 KB n = 166514, m = 10
107 Correct 60 ms 16120 KB n = 183874, m = 10
108 Correct 56 ms 17016 KB n = 194560, m = 10
109 Correct 53 ms 15112 KB n = 171994, m = 10
110 Correct 571 ms 103548 KB n = 165207, m = 100
111 Correct 632 ms 117752 KB n = 188459, m = 100
112 Correct 540 ms 101624 KB n = 162137, m = 100
113 Correct 461 ms 106232 KB n = 169691, m = 100
114 Correct 557 ms 117248 KB n = 187642, m = 100
115 Correct 503 ms 105632 KB n = 168456, m = 100
116 Correct 516 ms 113180 KB n = 180980, m = 100
117 Correct 524 ms 119672 KB n = 191687, m = 100
118 Correct 532 ms 104316 KB n = 166437, m = 100
119 Correct 651 ms 116636 KB n = 186520, m = 100
120 Correct 570 ms 104340 KB n = 166675, m = 100
121 Correct 676 ms 117448 KB n = 187725, m = 100
122 Correct 478 ms 101164 KB n = 161455, m = 100
123 Correct 573 ms 120696 KB n = 192977, m = 100
124 Correct 591 ms 120568 KB n = 192612, m = 100
125 Correct 528 ms 122656 KB n = 196512, m = 100
126 Correct 601 ms 123744 KB n = 198968, m = 100
127 Correct 519 ms 104440 KB n = 166659, m = 100
128 Correct 214 ms 51220 KB n = 199997, m = 34
129 Correct 14 ms 6904 KB n = 200000, m = 1
130 Correct 22 ms 7544 KB n = 200000, m = 1
131 Correct 500 ms 201336 KB n = 199999, m = 100
132 Correct 676 ms 162424 KB n = 199999, m = 100
133 Correct 17 ms 6912 KB n = 200000, m = 1