답안 #1088122

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1088122 2024-09-14T03:13:12 Z pedroslrey 질문 (CEOI14_question_grader) C++14
100 / 100
2216 ms 24520 KB
#include <bits/stdc++.h>

using namespace std;

int encode (int n, int x, int y) {
	static vector<int> dp(921);

	if (dp[0] == 0) {
		int cnt = 0;
		for (int mask = 1; mask < (1 << 12) && cnt <= 920; ++mask)
			if (__builtin_popcount(mask) == 6)
				dp[++cnt] = mask;
		dp[0] = -1;
	}

	int ans;
	for (int k = 0; k < 12; ++k)
		if ((dp[x] & (1 << k)) && !(dp[y] & (1 << k)))
			ans = k;

	return ans + 1;
}
#include <bits/stdc++.h>

using namespace std;

int decode (int n, int q, int h) {
	static vector<int> dp(921);

	if (dp[0] == 0) {
		int cnt = 0;
		for (int mask = 1; mask < (1 << 12) && cnt <= 920; ++mask)
			if (__builtin_popcount(mask) == 6)
				dp[++cnt] = mask;
		dp[0] = -1;
	}

	return (dp[q] >> (h - 1)) & 1;
}

Compilation message

encoder.cpp: In function 'int encode(int, int, int)':
encoder.cpp:21:15: warning: 'ans' may be used uninitialized in this function [-Wmaybe-uninitialized]
   21 |  return ans + 1;
      |               ^
# 결과 실행 시간 메모리 Grader output
1 Correct 2208 ms 24364 KB Output is correct - maxh = 12
2 Correct 2216 ms 24520 KB Output is correct - maxh = 12