Submission #1218547

#TimeUsernameProblemLanguageResultExecution timeMemory
1218547LIATeams (IOI15_teams)C++17
0 / 100
4094 ms8272 KiB
#include "teams.h" #include <vector> #include <climits> using namespace std; static int n; static vector<int> a, b; void init(int N, int A[], int B[]) { n = N; a.assign(A, A + N); b.assign(B, B + N); } int can(int m, int K[]) { vector<int> e(m, 0), cnt(m, 0); for (int j = 0; j < m; ++j) for (int i = 0; i < n; ++i) if (a[i] <= K[j] && K[j] <= b[i]) ++e[j]; for (int i = 0; i < n; ++i) { int best = -1, bestE = INT_MAX; for (int j = 0; j < m; ++j) if (a[i] <= K[j] && K[j] <= b[i] && e[j] < bestE) { bestE = e[j]; best = j; } if (best != -1) ++cnt[best]; } for (int j = 0; j < m; ++j) if (cnt[j] != K[j]) return 0; return 1; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...