Submission #1008528

#TimeUsernameProblemLanguageResultExecution timeMemory
1008528Math4Life2020Magic Show (APIO24_show)C++17
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> #include "Alice.h" using namespace std; using ll = long long; using ld = long double; using pii = pair<int,int>; ll N = 5000; ld seed0 = 0.1428; ld seed = seed0; ld getseed() { seed = 3.60*seed*(1.0-seed); return seed; } ll getrng(ll x) { //random integer in [0,x-1] return (((ll) round(10000000000*getseed()))%x); } ll l2(ll x) { return (31-__builtin_clz(x)); } /*ll setN(int Q) { return 143414341434143469; }*/ void rngreset() { seed=seed0; } vector<pii> Alice() { ll X = setN((int) N); vector<pii> vout; vector<bool> xv; ll E = 60; for (ll e=59;e>=0;e--) { xv.push_back((X>>e)%2); } for (ll n=1;n<N;n++) { ll D = l2(n)-1; ll val = 0; for (ll d=0;d<D;d++) { ll e = getrng(E); val += xv[e]*(1LL<<d); } vout.push_back({val+1,n+1}); } rngreset(); return vout; } long long Bob(vector<pii> V) { ll vals[N]; for (ll i=0;i<N;i++) { vals[i]=-1; } for (pii p0: V) { vals[p0.second-1]=p0.first-1; } vector<ll> xv; ll E = 60; for (ll e=59;e>=0;e--) { xv.push_back(-1); } for (ll n=1;n<N;n++) { ll D = l2(n)-1; for (ll d=0;d<D;d++) { ll e = getrng(E); //val += xv[e]*(1LL<<d); if (vals[n]!=-1) { xv[e]=(vals[n]>>d)%2; } } } ll X = 0; for (ll e=0;e<E;e++) { X += xv[e]*(1LL<<(E-1-e)); } rngreset(); return X; }
#include <bits/stdc++.h> #include "Bob.h" using namespace std; using ll = long long; using ld = long double; using pii = pair<int,int>; ll N = 5000; ld seed0 = 0.1428; ld seed = seed0; ld getseed() { seed = 3.60*seed*(1.0-seed); return seed; } ll getrng(ll x) { //random integer in [0,x-1] return (((ll) round(10000000000*getseed()))%x); } ll l2(ll x) { return (31-__builtin_clz(x)); } /*ll setN(int Q) { return 143414341434143469; }*/ void rngreset() { seed=seed0; } vector<pii> Alice() { ll X = setN((int) N); vector<pii> vout; vector<bool> xv; ll E = 60; for (ll e=59;e>=0;e--) { xv.push_back((X>>e)%2); } for (ll n=1;n<N;n++) { ll D = l2(n)-1; ll val = 0; for (ll d=0;d<D;d++) { ll e = getrng(E); val += xv[e]*(1LL<<d); } vout.push_back({val+1,n+1}); } rngreset(); return vout; } long long Bob(vector<pii> V) { ll vals[N]; for (ll i=0;i<N;i++) { vals[i]=-1; } for (pii p0: V) { vals[p0.second-1]=p0.first-1; } vector<ll> xv; ll E = 60; for (ll e=59;e>=0;e--) { xv.push_back(-1); } for (ll n=1;n<N;n++) { ll D = l2(n)-1; for (ll d=0;d<D;d++) { ll e = getrng(E); //val += xv[e]*(1LL<<d); if (vals[n]!=-1) { xv[e]=(vals[n]>>d)%2; } } } ll X = 0; for (ll e=0;e<E;e++) { X += xv[e]*(1LL<<(E-1-e)); } rngreset(); return X; }

Compilation message (stderr)

Bob.cpp: In function 'std::vector<std::pair<int, int> > Alice()':
Bob.cpp:33:9: error: 'setN' was not declared in this scope
   33 |  ll X = setN((int) N);
      |         ^~~~