제출 #1261109

#제출 시각아이디문제언어결과실행 시간메모리
1261109SzymonKrzywda질문 (CEOI14_question_grader)C++20
100 / 100
718 ms39648 KiB
#include <iostream>
#include <vector>
using namespace std;

bool wygen = 0;
vector<int> liczby;

void gen() {
  wygen = 1;
  const int K = 1 << 12;
  for (int msk = 0; msk < K; msk++) {
    int ile = 0;
    for (int bit = 0; bit < 12; bit++) {
      if ((1 << bit) & msk) ile++;
    }
    if (ile == 6) liczby.push_back(msk);
  }
}


int encode (int n, int x, int y) {
  if (!wygen) gen();
  // for (int i = 0; i < 12; i++) {
  //   int bit = 0;
  //   if ((1 << i) & liczby[x]) bit = 1;
  //   cout << bit;
  // }
  // cout << '\n';
  // for (int i = 0; i < 12; i++) {
  //   int bit = 0;
  //   if ((1 << i) & liczby[y]) bit = 1;
  //   cout << bit;
  // }
  // cout << '\n';
  
  for (int i = 0; i < 12; i++) {
    if (((1 << i) & liczby[x]) && !((1 << i) & liczby[y])) return i + 1;
  }
}
#include <iostream>
#include <vector>
using namespace std;

bool wygen2 = 0;
vector<int> liczby2;

void gen2() {
	wygen2 = 1;
	const int K = 1 << 12;
	for (int msk = 0; msk < K; msk++) {
		int ile = 0;
		for (int bit = 0; bit < 12; bit++) {
			if ((1 << bit) & msk) ile++;
		}
		if (ile == 6) liczby2.push_back(msk);
	}
}


int decode (int n, int q, int h) {
	if (!wygen2) gen2();
	h--;
	// for (int i = 0; i < 12; i++) {
	// 	int bit = 0;
	// 	if ((1 << i) & q) bit = 1;
	// 	cout << bit;
	// }
	// cout << '\n';
	
	if (liczby2[q] & (1 << h)) return 1;
	else return 0;
}

컴파일 시 표준 에러 (stderr) 메시지

# 1번째 컴파일 단계

encoder.cpp: In function 'int encode(int, int, int)':
encoder.cpp:39:1: warning: control reaches end of non-void function [-Wreturn-type]
   39 | }
      | ^
#Verdict Execution timeMemoryGrader output
Fetching results...