제출 #850624

#제출 시각아이디문제언어결과실행 시간메모리
850624vjudge1A Difficult(y) Choice (BOI21_books)C++17
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h> #include "books.h" using namespace std; // // --- Sample implementation for the task books --- // // To compile this program with the sample grader, place: // books.h books_sample.cpp sample_grader.cpp // in a single folder and run: // g++ books_sample.cpp sample_grader.cpp // in this folder. // #define int long long const int N = 1e5+5; int dp[N]; int pw(int x, int y) { return !y ? 1 : pw(x*x, y/2) * (y%2 ? x : 1); } void solve(int N, int K, long long A, int S) { // TODO implement this function /* if (skim(2) == 42) { impossible(); } else { answer({1, 3}); } */ int l = 1; int r = N; while (l < r) { int mid = (l+r)>>1; dp[mid] = skim(mid); if (pw(dp[mid], K) >= A) r = mid; else l = mid+1; } int x = l; for (int i = 1; i < K; i++) { if (x+i < N) dp[x+i] = skim(x+i); if (x-i > 0) dp[x-i] = skim(x-i); } vector<int> v; for (int i = x-K+1; i <= x+K-1; i++) { if (0 < i && i <= N) v.push_back(dp[i]); } int sz = v.size(); for (int mask = 0; mask < (1 << sz); mask++) { vector<signed> ans; int sum = 0; for (int i = 0; i < sz; i++) { if ((mask >> i) & 1) { ans.push_back(v[i]); sum += dp[v[i]]; } } if (A <= sum && sum <= A*2) answer(ans); } impossible(); }

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

/usr/bin/ld: /tmp/cclqAxbJ.o: in function `main':
grader.cpp:(.text.startup+0x83): undefined reference to `solve(int, int, long long, int)'
collect2: error: ld returned 1 exit status