Submission #1222651

#TimeUsernameProblemLanguageResultExecution timeMemory
1222651sleepntsheepShopping (JOI21_shopping)C++20
Compilation error
0 ms0 KiB
#include "Anna.h" #include <vector> namespace { const int B = 20 , N = 10000; int n, l, r, bel[N], ans, count, pre[N], suf[N] , lb, rb, num, at, arg, min, num2; } void InitA(int n, int l, int r) { ::n = n; ::l = l; ::r = r; for (int i = 0; i < n; ++i) bel[i] = i / B; lb = bel[l] + 1 , rb = bel[r]; for (int i = 8; i >= 0; --i) SendA((lb >> i) & 1); for (int i = 8; i >= 0; --i) SendA((rb >> i) & 1); count = 0; ans = 0; num = 0; num2 = 0; at = lb * B + B - 1; } void ReceiveA(bool x) { if (count < 20) { arg ^= (x ? 1 : 0) << (count); } else if (count < 40) { min ^= (x ? 1 : 0) << (count - 20); if (count == 39) if (bel[l] + 1 >= bel[r]) min = 1e9; } else { int y = (count - 40) % 40; if (y < 20) { num |= (x ? 1 : 0) << y; } else { y -= 20; num2 |= (x ? 1 : 0) << y; if (y == 19) { if (at == lb * B) { at = rb * B; } else if (at <= lb * B + B - 1) { --at; } else { ++at; } if (num >= l && num <= r && num2 < min) min = num2, arg = num; num = num2 = 0; } } } ++count; } int Answer() { return arg; }
#include "Bruno.h" #include <cstdio> #include <vector> namespace { const int B = 20, N = 10000; std::vector<int> P; int n, bel[N], low[N] , tot, count; int ij(int i, int j) { return P[i] < P[j]? i: j; } } void SendInt(int x, int bits) { for (int b = 0; b < bits; ++b) SendB((x >> b) & 1); } void InitB(int n, std::vector<int> P) { ::P = P; ::n = n; for (int i = 0; i < n; ++i) bel[i] = i / B, low[i / B] = i; for (int i = 0; i < n; ++i) low[i / B] = ij(low[i / B], i); count = 0; } void ReceiveB(bool y) { tot |= (y? 1 : 0) << (18 - count - 1); ++count; if (count == 18) { int lb = tot >> 9, rb = tot & 511; int x = lb * B >= n ? n - 1 : lb * B; for (int i = lb; i < rb; ++i) x = ij(x, low[i]); SendInt(x, 20); SendInt(P[x], 20); int at, run; at = lb * B - 1 >= n ? n - 1 : lb * B - 1; run = at; for (; at >= lb * B - B && at >= 0; --at) { SendInt(at, 20); SendInt(P[at], 20); run = ij(run, at); } at = rb * B; run = at; for (; at < rb * B + B && at < n; ++at) { SendInt(at, 20); SendInt(P[at], 20); run = ij(run, at); } } } :

Compilation message (stderr)

# 2번째 컴파일 단계

Bruno.cpp:62:1: error: expected unqualified-id before ':' token
   62 | :
      | ^