Submission #23778

# Submission time Handle Problem Language Result Execution time Memory
23778 2017-05-25T19:55:24 Z Hiasat Last supper (IOI12_supper) C++14
0 / 100
49 ms 7608 KB
#include <bits/stdc++.h>
#include "advisor.h"

using namespace std;

void ComputeAdvice(int *C, int N, int K, int M) {
	for (int i = 0; i < N; ++i){
		for(int k = 19; k >= 0 ; k--){
			bool r = C[i]&(1<<k);
			WriteAdvice(r);
		}
	}
}
#include <bits/stdc++.h>
#include "assistant.h"

using namespace std;

typedef pair<int,int> pii;

vector<int> nxt[100001];

int n , k , r;

bool have[100001];

int go(int color,int cur){
	vector<int>::iterator it = upper_bound(nxt[color].begin(),nxt[color].end(),cur);
	if(it == nxt[color].end())
		return n;
	return *it;
}
void Assist(unsigned char *A, int N, int K, int R) {
	n = N;
	k = K;
	r = R;
	for (int i = 0; i < N; ++i) {
		int num = 0;
		for (int k = 19 ; k >= 0 ; k--) {
			num += A[i * 20 + (19 - k)] * (1 << k);
		}
		nxt[num].push_back(i);
	}
	priority_queue< pii > q;
	for (int i = 0; i < K; ++i){
		have[i] = 1;
		q.push(make_pair(go(i,-1),i));
	}
	for (int i = 0; i < N; i++) {
		int req = GetRequest();
		if(have[req])
			continue;
		pii src = q.top();
		q.pop();
		PutBack(src.second);
		have[src.first] = 0;
		have[req] = 1;
		q.push(make_pair(go(req,i),req));
	}

}
# Verdict Execution time Memory Grader output
1 Correct 6 ms 3152 KB Output is correct
2 Incorrect 6 ms 5756 KB Error - Putting back a color when it is already on the scaffold
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 49 ms 6784 KB Error - Putting back a color when it is already on the scaffold
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 28 ms 7608 KB Error - advice is too long
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 6 ms 7608 KB Error - advice is too long
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 30 ms 7608 KB Error - advice is too long
2 Incorrect 29 ms 7608 KB Error - advice is too long
3 Incorrect 27 ms 7608 KB Error - advice is too long
4 Incorrect 29 ms 7608 KB Error - advice is too long
5 Incorrect 27 ms 7608 KB Error - advice is too long
6 Incorrect 27 ms 7608 KB Error - advice is too long
7 Incorrect 28 ms 7608 KB Error - advice is too long
8 Incorrect 28 ms 7608 KB Error - advice is too long
9 Incorrect 32 ms 7608 KB Error - advice is too long
10 Incorrect 27 ms 7608 KB Error - advice is too long