Submission #103774

#TimeUsernameProblemLanguageResultExecution timeMemory
103774alexpetrescuLast supper (IOI12_supper)C++14
0 / 100
2562 ms1400 KiB
#include "advisor.h" #include <vector> void ComputeAdvice(int *C, int N, int K, int M) { std::vector < int > viz(N, 0); int timp = 0; for (int i = 0; i < K; i++) { int pos = 0, cnt = 0; timp++; while (pos < N && C[pos] != i) { cnt += viz[C[pos]] != timp; viz[C[pos]] = timp; pos++; } WriteAdvice(pos < N && cnt < K); } for (int i = 0; i < N; i++) { int pos = i + 1, cnt = 0; timp++; while (pos < N && C[pos] != i) { cnt += viz[C[pos]] != timp; viz[C[pos]] = timp; pos++; } WriteAdvice(pos < N && cnt < K); } }
#include "assistant.h" #include <vector> void Assist(unsigned char *A, int N, int K, int R) { std::vector < int > v(K), t(N, 0); for (int i = 0; i < K; i++) v[i] = i, t[i] = A[i]; for (int i = 0; i < N; i++) { int x = GetRequest(); int p = 0; while (p < K && v[p] != x) p++; if (p >= K) { p = 0; while (t[v[p]]) p++; PutBack(v[p]); v[p] = x; } t[x] = A[i + K]; } }
#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...