Submission #546468

#TimeUsernameProblemLanguageResultExecution timeMemory
546468d4xnA Difficult(y) Choice (BOI21_books)C++17
0 / 100
3 ms1076 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 ll long long int n, k, s; ll a; vector<ll> v/*, pre*/; vector<int> ans; bool ended; void generate(int idx, int prev, ll sum) { if (ended) return; if (n-prev < k-idx) return; if (sum > a*2) return; //if (sum + pre[n] - pre[prev] < a) return; if (idx == k) { if (a <= sum && sum <= a*2) { ended = 1; return; } return; } for (int i = prev+1; i <= n; i++) { ans[idx] = i; generate(idx+1, i, sum + v[i]); } } void solve(int N, int K, long long A, int S) { // TODO implement this function // impossible() // answer() // puedo hacer S preguntas // hay N libros // ordenados de mayor a menor por precio // tengo que comprar K // y la suma tiene que ser >= A y <= A*2 n = N; k = K; a = A; s = S; v.resize(n+1); for (int i = 1; i <= n; i++) { v[i] = skim(i); } ended = 0; ans.resize(k); generate(0, 0, 0ll); if (!ended) impossible(); answer(ans); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...