Submission #813321

#TimeUsernameProblemLanguageResultExecution timeMemory
813321AndreyLast supper (IOI12_supper)C++14
0 / 100
304 ms18528 KiB
#include<bits/stdc++.h> #include "advisor.h" using namespace std; vector<int> haha[100001]; void ComputeAdvice(int *c, int n, int k, int m) { int br = 0,z = 1; while(z <= n) { z*=2; br++; } vector<int> ans(0); vector<int> p(n); vector<bool> bruh(n); int a,b; priority_queue<pair<int,int>> idk; for(int i = 0; i < n; i++) { haha[c[i]].push_back(i); } for(int i = 0; i < n; i++) { haha[i].push_back(INT_MAX); } for(int i = 0; i < k; i++) { bruh[i] = true; idk.push({haha[i][0],i}); } for(int i = 0; i < n; i++) { if(bruh[c[i]]) { p[c[i]]++; if(haha[c[i]][p[c[i]]] == INT_MAX) { idk.push({INT_MAX,c[i]}); } else { idk.push({rand(),c[i]}); } ans.push_back(INT_MAX); } else { a = idk.top().first; b = idk.top().second; bruh[b] = false; idk.pop(); ans.push_back(b); p[c[i]]++; if(haha[c[i]][p[c[i]]] == INT_MAX) { idk.push({INT_MAX,c[i]}); } else { idk.push({rand(),c[i]}); } bruh[c[i]] = true; } } for(int i = 0; i < n; i++) { for(int j = br-1; j >= 0; j--) { if((1 << j)&ans[i]) { WriteAdvice(1); } else { WriteAdvice(0); } } } }
#include<bits/stdc++.h> #include "assistant.h" using namespace std; void Assist(unsigned char *a, int n, int k, int r) { int br = 0,z = 1,x = 0; while(z <= n) { z*=2; br++; } int y = 0; for(int i = 0; i < n; i++) { GetRequest(); x = 0; for(int j = 0; j < br; j++) { x*=2; x+=(int)a[y]; y++; } if(x < n) { PutBack(x); } } }

Compilation message (stderr)

advisor.cpp: In function 'void ComputeAdvice(int*, int, int, int)':
advisor.cpp:15:9: warning: variable 'a' set but not used [-Wunused-but-set-variable]
   15 |     int a,b;
      |         ^
#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...