QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#557405 | #9241. Sphinx | yyyyxh# | Compile Error | / | / | C++14 | 1.2kb | 2024-09-11 09:33:01 | 2024-09-11 09:33:01 |
Judging History
This is the latest submission verdict.
- [2024-09-11 09:33:01]
- Judged
- Verdict: Compile Error
- Time: 0ms
- Memory: 0kb
- [2024-09-11 09:33:01]
- Submitted
answer
#include "sphinx.h"
#include <random>
#include <vector>
#include <cstdio>
#include <cassert>
#include <algorithm>
using namespace std;
typedef vector<int> vi;
vi find_colours(int n,vi X,vi Y){
mt19937 rng(20070329);
vector<vi> adj(n);
int m=max(X.size(),Y.size());
for(int i=0;i<m;++i){
adj[X[i]].emplace_back(Y[i]);
adj[Y[i]].emplace_back(X[i]);
}
vi vis(n),col(n);
auto dfs=[&](auto self,int u)->void{
vis[u]=1;
for(int v:adj[u]){
if(vis[v]) continue;
col[v]=col[u]^1;
self(self,v);
}
};
dfs(dfs,rng()%n);
vi res(n,-1);
auto sol=[&](auto self,vi A,vi B)->void{
auto ask=[&](int c)->int{
vi E(n,c);
for(int x:A) E[x]=-1;
return perform_experiment(E);
};
int lim=ask(n);
vi TB;
for(int x:B) if(ask(x)^lim) TB.emplace_back(x);
B.swap(TB);
if(B.size()==1lu){for(int x:A) res[x]=B.back();return;}
shuffle(A.begin(),A.end(),rng);
int mid=A.size()>>1;
self(self,vi(A.begin(),A.begin()+mid),B);
self(self,vi(A.begin()+mid,A.end()),B);
};
vi W0,W1,init;
for(int i=0;i<n;++i){
if(col[i]) W1.emplace_back(i);
else W0.emplace_back(i);
init.emplace_back(i);
}
sol(sol,W0,init);
sol(sol,W1,init);
return res;
}
详细
implementer.cpp: In function ‘int {anonymous}::sz(const C&)’: implementer.cpp:26:52: error: ‘size’ is not a member of ‘std’; did you mean ‘size_t’? 26 | template<class C> int sz(const C& c) { return std::size(c); } | ^~~~ | size_t