QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#667922#9518. 观虫我 (旧版数据)wsyear60 9874ms535776kbC++142.6kb2024-10-23 09:46:232024-10-23 09:46:28

Judging History

你现在查看的是最新测评结果

  • [2024-10-23 09:46:28]
  • 评测
  • 测评结果:60
  • 用时:9874ms
  • 内存:535776kb
  • [2024-10-23 09:46:23]
  • 提交

answer

#include <bits/stdc++.h>

#define rep(i, j, k) for (int i = (j); i <= (k); ++i)
#define per(i, j, k) for (int i = (j); i >= (k); --i)
#define SZ(v) int((v).size())
#define ALL(v) (v).begin(),(v).end()
#define fi first
#define se second
using ll = long long;
using uint = unsigned int;
using ull = unsigned long long;
using pii = std::pair<int, int>;
using pll = std::pair<ll, ll>;

template<class T>inline void chkmn(T &x, T y) { if (y < x) x = y; }
template<class T>inline void chkmx(T &x, T y) { if (y > x) x = y; }

using namespace std;

const int maxn = 1000010;
const int A = 6;
mt19937 rnd(random_device{}());

struct node {
  int op;
  uint x;
} a[maxn];

ull buc[1 << 26], val[64];
int n, m, p[maxn], k0, k1, k2, bits[32];

uint gao(uint x) {
  rep (i, 0, n - 1) bits[i] = (x >> i & 1);
  uint res = 0;
  rep (i, 0, n - 1) if (p[i] == 2) res = res << 1 | bits[i];
  rep (i, 0, n - 1) if (p[i] == 1) res = res << 1 | bits[i];
  rep (i, 0, n - 1) if (p[i] == 0) res = res << 1 | bits[i];
  rep (i, 0, n - 1) if (p[i] == 3) res = res << 1 | bits[i];
  return res;
}

int main() {
  cin.tie(nullptr) -> ios::sync_with_stdio(false);
  rep (s, 0, 63) rep (t, 0, 63) if ((s & t) == s) val[s] ^= (1ull << t);
  cin >> n >> m;
  rep (i, 1, m) {
    char ch;
    cin >> ch >> a[i].x;
    a[i].op = (ch == '!');
  }
  rep (i, 0, A - 1) p[i] = 0;
  rep (i, A, 2 * A - 1) p[i] = 1;
  rep (i, 2 * A, 25) p[i] = 2;
  rep (i, 26, 31) p[i] = 3;
  reverse(p, p + 32);
  shuffle(p + 6, p + 32, rnd);
  shuffle(p, p + n, rnd);
  rep (i, 0, n - 1) {
    if (p[i] == 0) k0++;
    else if (p[i] == 1) k1++;
    else if (p[i] == 2) k2++;
  }
  rep (i, 1, m) a[i].x = gao(a[i].x);
  rep (i, 1, m) {
    if (a[i].op) {
      uint tp = a[i].x & 63, ax = a[i].x >> 6;
      uint x = ax & ((1u << k0) - 1);
      uint y = (ax >> k0) & ((1u << k1) - 1);
      uint z = ax >> (k0 + k1);
      uint ix = ((1u << k0) - 1) ^ x;
      uint mask = ix | (z << (k0 + k1));
      uint base = (y << k0) ^ ((1u << k0) - 1);
      for (uint s = mask; ; s = (s - 1) & mask) {
        buc[s ^ base] ^= val[tp];
        if (!s) break;
      }
    } else {
      uint tp = a[i].x & 63, ax = a[i].x >> 6;
      uint x = ax & ((1u << k0) - 1);
      uint y = (ax >> k0) & ((1ull << k1) - 1);
      uint z = ax >> (k0 + k1);
      uint iz = ((1u << k2) - 1) ^ z;
      uint mask = (y << k0) | (iz << (k0 + k1));
      ull res = 0;
      for (uint s = mask; ; s = (s - 1) & mask) {
        res ^= buc[s ^ x];
        if (!s) break;
      }
      cout << (res >> tp & 1) << '\n';
    }
  }
}

詳細信息

Subtask #1:

score: 20
Accepted

Test #1:

score: 20
Accepted
time: 283ms
memory: 15136kb

input:

24 1000000
! 9475137
! 4501536
? 14277831
? 16695039
? 5723102
? 6093887
? 3014539
! 475969
? 12500973
! 8750136
? 15617895
! 4589313
! 152300
? 3612579
? 15248179
! 764162
! 4461105
? 7274495
? 13299697
! 8388872
? 13490383
! 3875594
! 9439685
? 16776189
! 6443172
? 13864879
! 395691
? 7142271
? 16...

output:

1
0
0
1
0
1
0
0
0
0
0
0
0
1
0
0
1
1
1
0
1
1
1
1
0
0
1
1
0
0
1
0
0
0
1
1
0
0
1
1
1
0
1
1
0
0
0
0
0
0
0
0
1
1
0
0
1
0
1
1
1
0
0
0
1
0
0
0
1
1
1
1
1
0
0
0
1
0
1
1
0
1
1
0
0
0
0
1
1
0
0
1
1
0
1
0
0
0
0
0
0
1
1
1
1
1
0
1
0
0
0
0
0
1
1
0
1
1
0
1
0
1
1
1
1
1
0
0
1
1
1
1
1
1
0
1
0
0
0
0
0
1
1
1
0
0
0
1
1
0
...

result:

ok Accepted.

Test #2:

score: 20
Accepted
time: 191ms
memory: 17140kb

input:

24 1000000
! 0
? 16777215
! 0
! 0
! 262144
? 16777215
? 16777215
? 15728639
! 0
? 16777215
? 16777215
! 16384
? 16777211
! 0
? 16777215
! 0
! 0
? 16760831
! 0
! 0
? 16777215
! 0
? 16777215
! 0
? 16777215
! 0
? 16777215
? 16777215
! 0
! 0
? 16777215
? 16777215
? 16777215
? 16777215
! 32768
? 16777215...

output:

1
0
0
0
1
1
0
1
0
1
0
1
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
1
0
0
0
1
0
0
0
1
0
0
1
0
1
0
0
1
1
1
1
1
1
0
1
1
0
0
1
1
0
0
0
1
0
1
0
1
0
1
0
1
1
1
0
0
1
0
1
0
0
0
0
0
1
0
0
1
0
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
0
1
0
1
0
0
1
1
1
1
0
0
0
0
1
1
1
1
1
0
1
1
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
...

result:

ok Accepted.

Test #3:

score: 20
Accepted
time: 213ms
memory: 16832kb

input:

24 1000000
! 197632
! 1075232
? 16775167
! 65792
? 16777147
? 8388575
? 16252927
? 15825369
? 16775135
! 4194304
! 552
? 16775871
? 8125439
? 16252667
? 16768703
? 7864319
? 16773113
! 4722688
! 1048760
! 1028
? 16576484
! 2136320
? 16776703
? 16707039
? 12580831
! 100
? 16776191
! 17476
? 16773119
...

output:

1
1
0
1
1
0
1
0
0
1
1
1
1
0
0
1
0
1
1
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
1
1
1
0
1
0
1
1
0
0
1
0
0
0
1
0
0
1
0
1
0
1
1
1
1
0
0
1
1
0
1
1
0
0
1
1
0
1
0
1
0
0
0
0
1
1
1
1
0
1
1
0
0
1
1
0
0
1
0
1
0
1
0
1
1
1
0
1
0
1
0
1
0
1
1
0
0
1
0
0
1
1
0
1
0
1
0
0
0
0
0
0
1
1
1
1
0
1
1
1
1
1
0
0
1
0
1
1
1
0
1
0
0
...

result:

ok Accepted.

Test #4:

score: 20
Accepted
time: 292ms
memory: 15932kb

input:

24 1000000
! 6820106
! 443659
! 3080
? 525571
! 377345
? 5504934
! 13641450
? 12039421
! 12866772
? 14514068
! 6489651
? 2882394
? 15728506
? 1559551
! 11885066
! 15575062
! 13885663
! 4246041
? 12441078
? 16742263
! 8407354
? 16773116
! 739912
? 14397343
? 8220285
? 15727728
? 3146756
? 14536632
? ...

output:

0
0
0
0
0
0
1
0
1
1
1
1
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
1
1
0
0
1
1
0
1
0
0
0
0
1
0
1
1
1
1
0
0
0
0
1
0
1
1
0
0
0
1
0
1
0
0
1
1
0
0
1
1
1
0
0
0
1
0
0
1
1
0
1
1
1
0
0
1
1
0
0
0
0
1
0
0
0
1
0
0
1
1
0
1
1
1
1
1
0
1
1
0
1
1
0
0
1
0
1
1
0
1
1
1
0
0
1
0
1
0
0
1
0
1
1
1
0
0
0
0
0
1
1
1
1
1
1
1
0
0
...

result:

ok Accepted.

Test #5:

score: 20
Accepted
time: 349ms
memory: 16236kb

input:

24 1000000
! 131592
? 15728123
! 544
? 11780584
? 10477567
! 256
! 1032
? 15728638
? 16777207
? 15717887
! 8358425
! 0
! 237735
? 12582399
? 15777814
! 2240422
? 3878186
? 16777215
! 48
! 10322848
! 7758449
! 4994634
? 6696114
? 16760828
! 6295624
! 5329776
! 69648
! 0
! 6276117
! 9364500
! 11781556...

output:

0
0
0
0
0
0
0
1
1
0
0
1
1
0
0
1
0
0
0
0
0
1
1
0
0
1
1
0
1
1
1
1
0
0
1
0
0
0
1
1
1
1
1
1
1
1
1
1
1
0
0
1
1
1
1
1
1
1
1
0
1
1
1
1
0
1
0
1
0
1
0
1
1
0
1
1
1
1
0
0
1
1
0
1
0
1
1
1
1
1
1
1
1
0
1
0
0
1
0
0
1
0
0
1
0
0
1
1
1
0
1
1
0
0
0
0
0
1
0
1
0
0
1
1
0
0
0
0
0
1
0
1
0
1
1
1
1
0
0
0
1
0
1
0
1
0
1
1
0
1
...

result:

ok Accepted.

Test #6:

score: 20
Accepted
time: 349ms
memory: 16344kb

input:

24 1000000
! 10467318
! 16738876
! 2
! 0
! 16384
! 4194562
! 8204
? 18603
? 12862536
! 49
! 132168
! 6213595
! 16220133
? 12582863
? 680960
! 9441304
! 64
! 4195328
! 4194304
? 12617956
! 5369125
? 16072703
? 4915492
? 10729472
? 11067810
! 32
? 16777085
? 16711677
? 16774655
! 16334796
? 3121151
! ...

output:

1
0
1
0
1
1
0
1
1
0
0
0
0
1
1
0
0
0
1
0
1
1
1
1
1
0
1
0
1
0
1
0
0
0
1
0
0
0
1
0
0
0
0
1
0
1
0
1
0
0
0
0
1
0
1
0
0
0
1
0
1
0
1
1
1
0
0
0
1
1
1
0
0
1
1
0
0
1
0
0
1
0
0
0
0
0
1
1
0
1
1
0
0
1
1
0
1
1
1
0
0
0
1
0
0
0
1
1
1
1
1
1
1
1
0
1
1
1
1
0
0
0
1
1
1
1
1
0
1
1
1
1
0
1
0
1
0
0
0
0
0
1
1
1
1
1
1
1
1
0
...

result:

ok Accepted.

Test #7:

score: 20
Accepted
time: 3835ms
memory: 15748kb

input:

24 1000000
! 16773119
! 16515007
? 32
? 14647295
! 65536
! 16773117
? 12582895
! 12582879
? 16744447
? 9907711
! 8405120
? 16244446
! 256
! 393217
? 16711167
! 66048
? 16302047
! 1179648
! 199680
? 16777211
? 16773117
? 8126463
? 16777215
! 512
? 16777135
? 0
! 8192
! 8257535
? 1
! 4
! 16744187
? 21...

output:

0
0
1
1
1
0
1
1
1
0
1
1
0
0
0
0
0
1
0
1
0
1
0
0
1
1
0
1
1
0
1
1
1
1
1
0
0
1
1
1
0
0
0
1
1
1
1
0
1
1
0
0
0
1
0
1
0
1
0
1
0
1
1
1
1
0
1
0
0
0
0
1
1
0
1
1
1
1
0
0
1
0
0
1
0
1
0
1
1
0
1
0
1
1
1
1
0
1
1
0
0
1
1
0
1
0
0
0
0
1
1
0
1
0
1
0
1
0
0
1
1
1
0
1
0
0
0
1
1
1
1
1
0
1
1
1
0
1
1
0
0
1
1
0
1
1
0
1
1
0
...

result:

ok Accepted.

Test #8:

score: 20
Accepted
time: 290ms
memory: 15628kb

input:

24 1000000
! 16764936
? 16776419
? 16775574
! 3182592
? 16773120
? 16775168
? 16775459
! 5369856
! 2310660
! 10965249
? 16758952
? 16776921
? 16642080
! 16773128
! 835717
? 16766163
? 16234302
! 11759872
? 5108382
? 16773120
! 16773120
? 16776864
! 8450048
! 6909952
! 16773120
! 15298560
! 16758762
...

output:

0
0
1
1
1
1
1
0
1
1
0
0
1
1
1
0
0
0
1
0
0
1
0
0
0
0
1
1
0
1
1
0
1
0
0
1
1
0
0
1
0
0
1
1
0
1
0
1
1
1
1
1
0
0
0
1
1
0
1
0
1
1
0
1
0
1
1
0
0
0
0
1
0
0
0
1
0
1
1
1
1
1
1
1
1
0
0
0
0
0
1
0
0
1
1
0
1
0
1
0
1
1
0
1
1
0
1
0
1
0
0
0
0
1
1
1
1
1
1
1
1
1
0
1
0
0
0
0
1
1
0
1
1
0
1
1
0
0
0
1
1
1
0
0
1
1
1
1
1
1
...

result:

ok Accepted.

Test #9:

score: 20
Accepted
time: 258ms
memory: 15936kb

input:

24 1000000
! 2084864
? 16743423
! 2375680
? 8323006
? 16777199
! 1052676
! 8192
! 9675264
! 13045904
? 16776639
? 16710836
? 0
? 16251250
? 16768646
! 14974976
? 16776000
? 16775832
? 15728320
? 16217979
! 2101248
? 16777215
! 4128768
! 2080768
! 14213120
! 16285824
? 16668655
? 16776188
! 6037508
?...

output:

0
1
0
1
1
0
0
1
1
0
1
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
1
0
0
0
0
0
1
1
1
0
0
1
0
0
1
1
0
1
1
1
1
1
0
1
0
1
0
0
0
0
1
1
0
1
1
0
1
0
0
1
1
0
0
0
0
1
1
1
1
1
0
1
1
1
1
0
1
1
0
1
1
1
0
1
1
1
0
1
0
0
0
0
1
0
1
0
1
1
0
1
0
0
1
0
0
0
1
1
0
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
1
0
0
1
1
0
1
0
0
...

result:

ok Accepted.

Test #10:

score: 20
Accepted
time: 965ms
memory: 16128kb

input:

24 1000000
! 1204808
! 5230471
? 295200
! 16709503
? 427666
? 0
! 1376552
! 4728839
! 262272
? 13408158
? 14352383
! 11955895
! 16515067
? 16777215
! 65569
! 5855981
? 11352945
! 16314879
? 1909256
! 16375558
! 3185312
? 11836419
! 9433711
? 2036849
! 4202562
! 8192
! 16777215
? 2056884
? 8421401
! ...

output:

0
0
0
1
0
0
1
0
0
1
0
0
1
1
1
0
0
0
0
0
0
1
0
1
0
0
0
0
1
1
0
0
1
1
0
0
1
1
0
0
0
0
0
0
0
1
0
0
1
1
1
1
1
0
0
0
1
0
0
0
1
0
1
1
0
1
0
0
1
1
0
0
0
1
0
0
1
0
0
1
0
0
0
0
1
1
1
0
1
0
0
1
0
1
0
1
1
1
1
1
0
1
1
1
1
1
0
1
0
0
1
0
0
0
0
1
1
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
0
...

result:

ok Accepted.

Subtask #2:

score: 20
Accepted

Test #11:

score: 20
Accepted
time: 509ms
memory: 23404kb

input:

26 1000000
! 18006034
? 66957270
! 2133064
! 147618
! 34621442
? 49715575
? 62879287
! 18620682
? 67073751
! 62941186
! 7634532
? 67100031
? 12517237
! 4804997
? 65991126
! 138275
? 65722687
? 66043391
! 19147234
? 45743743
! 2242648
! 44378336
? 48226020
! 34341926
! 665045
? 55433083
! 5554254
? 4...

output:

0
0
0
0
1
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
1
0
0
1
1
0
0
0
1
1
0
0
0
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
0
0
0
1
1
0
1
1
1
0
1
1
1
0
1
0
1
1
0
0
0
0
1
1
0
0
1
0
1
0
0
1
0
1
1
0
1
1
0
0
1
0
1
0
1
0
1
1
1
1
0
0
1
0
0
0
0
1
0
1
0
1
1
0
0
1
0
1
1
0
0
0
1
0
1
1
0
1
1
1
0
1
0
1
0
0
0
1
1
0
1
1
0
1
1
1
0
1
...

result:

ok Accepted.

Test #12:

score: 20
Accepted
time: 168ms
memory: 20352kb

input:

26 1000000
! 0
! 16779264
! 4
? 67092479
? 67108863
! 1048832
! 0
? 67108863
? 67108863
? 67108863
? 67108863
! 0
! 0
! 0
? 67108863
! 2048
? 67108863
! 0
? 66584575
! 8192
! 0
? 67108863
? 67108863
! 0
! 0
? 67092479
? 67108863
! 0
? 67108863
? 67108863
? 67108863
? 67108863
? 67108863
! 0
? 671088...

output:

1
1
1
1
1
1
0
1
0
0
0
0
0
1
1
1
1
1
0
0
0
0
1
0
0
0
1
1
0
0
0
0
1
1
0
0
0
0
0
0
1
0
1
0
0
1
0
1
1
0
0
1
0
1
1
1
1
1
0
0
1
1
0
1
1
1
0
0
1
0
0
0
1
1
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
1
0
1
1
0
0
0
0
0
0
1
1
1
1
1
0
0
0
0
1
1
1
0
0
0
0
0
0
1
0
1
1
1
1
0
0
1
1
0
1
1
0
1
0
0
0
1
0
1
0
1
1
...

result:

ok Accepted.

Test #13:

score: 20
Accepted
time: 283ms
memory: 20464kb

input:

26 1000000
! 34816
! 229376
? 33554422
? 62504959
! 271362
? 66965439
! 16777346
? 66977630
? 67108831
! 8194
? 58653671
! 8224
? 67108735
! 16793616
? 58589055
! 18874880
! 34816
? 58720191
! 526432
! 8397312
? 66977663
! 2097704
! 9437312
? 66060223
? 50331647
? 67108863
? 67104767
! 64
! 106497
?...

output:

0
1
1
0
0
1
1
1
1
1
1
0
1
1
1
1
0
1
0
1
0
1
0
0
1
0
1
0
0
1
1
1
1
1
0
0
1
1
1
0
0
0
0
1
0
0
0
0
1
1
1
1
1
0
1
1
1
0
1
1
0
0
1
1
1
0
1
0
1
0
0
0
0
1
0
0
0
1
0
1
0
0
1
0
1
0
0
0
0
1
0
0
0
1
0
1
1
1
0
1
1
0
1
1
1
0
0
0
1
0
0
1
1
0
1
1
0
0
1
0
1
0
0
1
0
0
0
0
0
1
0
0
0
1
0
1
0
1
0
1
0
1
1
1
1
1
0
1
0
0
...

result:

ok Accepted.

Test #14:

score: 20
Accepted
time: 463ms
memory: 22568kb

input:

26 1000000
! 12239560
? 11240340
? 56270731
! 15892480
? 66054107
? 58653679
? 67097875
? 29022650
! 44635136
! 9765921
? 46792429
? 41933503
! 311312
! 38289409
! 8912897
? 43515829
? 52935717
! 10028228
? 17263997
! 36244352
! 37748760
! 4816901
! 40788992
! 1180229
! 38429834
? 29015917
! 3296346...

output:

0
0
0
0
1
0
0
0
0
0
0
0
1
1
1
0
0
0
0
1
1
1
0
0
0
0
1
1
0
0
0
0
1
1
0
1
0
1
0
0
0
1
1
1
1
0
1
1
0
1
1
0
1
1
0
1
0
0
0
0
0
0
1
1
1
1
1
0
1
0
1
1
1
0
0
0
0
1
1
1
0
0
0
1
1
0
1
1
0
1
1
1
1
1
1
1
1
0
1
0
1
1
0
0
1
0
1
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
1
0
0
0
0
0
0
1
1
1
...

result:

ok Accepted.

Test #15:

score: 20
Accepted
time: 630ms
memory: 20864kb

input:

26 1000000
! 17894450
! 28643972
! 33554432
! 528
? 14168274
! 2537556
! 44889809
? 31675344
? 8351743
! 43354354
! 65537
! 39790768
? 66579959
? 65994748
? 21499891
? 34735264
? 58720255
! 20972688
? 46437446
? 62910207
! 4210689
? 66060243
? 1181484
! 16851026
! 50331648
! 50374762
? 52527805
? 17...

output:

0
1
1
0
1
1
1
0
1
1
0
0
0
1
0
1
1
1
0
1
0
0
0
0
1
0
1
1
1
1
1
1
0
1
0
1
1
1
0
1
0
1
1
0
1
0
0
0
1
1
1
1
1
0
1
0
1
0
1
1
0
0
0
0
0
0
0
0
0
1
1
0
1
0
1
0
0
0
0
1
1
0
1
1
0
0
1
1
1
0
1
0
1
1
1
0
1
0
0
1
0
1
1
0
0
0
0
0
1
1
1
0
1
1
1
0
1
0
1
1
0
0
0
1
0
0
0
1
0
1
0
1
1
1
1
0
1
1
1
1
1
0
0
1
0
0
1
1
0
1
...

result:

ok Accepted.

Test #16:

score: 20
Accepted
time: 1163ms
memory: 23216kb

input:

26 1000000
! 64945459
! 2130432
! 2532046
! 12599424
! 56282647
? 19344017
? 45090833
? 4805144
? 46960018
? 16943286
! 12584068
! 50327645
! 64749309
! 67005375
? 66944887
? 31721023
? 66584446
! 2048
! 50257395
? 45236384
! 7858013
? 1079434
! 2
! 10518528
? 67108863
! 34615298
! 33824768
? 628490...

output:

0
0
0
0
0
0
0
1
0
1
0
1
1
0
0
1
0
1
0
1
1
0
0
0
0
1
1
1
0
0
0
1
1
1
0
1
1
1
0
0
1
0
1
1
1
1
0
1
1
1
1
0
0
0
0
1
1
1
0
0
0
1
0
0
0
0
1
1
1
0
0
0
0
1
0
1
0
0
1
0
0
1
1
1
0
0
0
1
0
1
1
0
1
0
1
0
1
0
1
0
0
1
1
0
0
1
1
1
0
0
1
1
0
0
0
0
1
1
0
1
1
1
1
0
1
0
0
0
1
0
0
0
0
0
1
1
1
1
0
1
0
1
1
1
1
1
1
1
0
1
...

result:

ok Accepted.

Test #17:

score: 20
Accepted
time: 1160ms
memory: 23720kb

input:

26 1000000
! 50265974
? 67103483
? 33550318
! 67107839
! 2053
! 66772981
! 2150528
? 62906358
! 67027965
? 65544
? 67108863
! 50265903
? 16781313
? 67108863
? 66048
? 66567159
? 25243672
? 67108859
! 60129279
? 65007615
! 50331262
? 4718592
! 49283071
! 0
? 2261536
? 256
? 62914047
! 6815872
! 8262
...

output:

0
0
1
0
0
0
1
0
1
0
1
1
0
1
1
1
1
1
1
0
1
1
0
0
1
1
0
1
0
1
0
1
1
1
0
0
1
1
1
0
1
1
1
1
1
1
0
0
0
0
1
0
1
1
1
1
0
1
1
1
0
1
1
0
1
0
0
1
0
0
1
1
1
0
1
1
1
0
0
0
0
1
1
0
1
0
0
1
0
1
0
0
0
1
0
1
0
1
0
1
1
1
0
0
1
0
1
1
1
1
0
0
0
1
0
1
0
0
1
1
1
1
0
0
0
1
0
1
0
0
1
0
0
0
0
1
0
1
1
0
1
1
1
0
1
0
1
1
0
0
...

result:

ok Accepted.

Test #18:

score: 20
Accepted
time: 526ms
memory: 22612kb

input:

26 1000000
! 66052096
? 42209280
? 67104857
! 67100800
! 67100672
? 67093698
? 67102967
! 67100736
! 65003520
! 57491456
? 66969856
? 67105249
? 67101966
? 67103853
! 65626112
? 27226114
? 67100674
? 66969600
! 67100688
! 67100672
! 20259584
? 67100680
! 58220584
? 67105285
! 33548292
! 36084616
! 5...

output:

0
1
0
1
1
0
0
1
0
1
0
0
0
1
0
0
1
1
0
1
0
1
0
0
1
1
1
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
1
0
0
1
1
0
1
0
0
0
1
0
1
0
1
1
1
0
1
1
0
1
0
0
0
1
1
0
1
0
0
0
1
0
1
1
1
0
1
0
0
0
1
1
1
0
0
0
1
0
1
0
0
1
0
0
1
0
0
1
1
0
0
0
0
1
1
1
1
0
1
1
0
0
0
0
0
0
1
1
0
1
1
1
1
1
1
0
0
0
1
0
0
1
0
1
0
1
0
0
0
0
1
1
1
0
1
...

result:

ok Accepted.

Test #19:

score: 20
Accepted
time: 329ms
memory: 20796kb

input:

26 1000000
! 13918736
? 49807334
? 65011455
? 67102822
? 67108726
! 57503776
? 67105367
! 17432832
? 67074047
? 67107284
? 67090997
! 491520
! 10436672
? 66971808
? 67107137
! 5545984
? 67100784
? 67102789
! 21217280
! 20914176
? 67104416
! 30859264
! 20201472
! 27369480
? 67106623
? 67107466
? 6710...

output:

0
1
0
1
1
1
1
0
0
1
1
1
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
1
1
1
1
0
0
1
0
0
1
0
0
1
0
0
1
0
0
1
0
1
0
1
1
1
0
1
0
0
1
0
1
1
1
0
1
0
1
1
0
1
0
0
0
0
0
1
0
1
0
0
1
1
1
1
1
0
1
0
0
0
0
1
1
1
1
0
1
0
1
1
1
1
0
0
1
0
1
0
1
0
1
0
0
0
0
1
1
0
1
0
0
0
1
0
0
0
1
1
0
0
1
1
0
1
1
1
1
0
1
1
0
0
0
1
0
1
1
0
0
0
1
1
...

result:

ok Accepted.

Test #20:

score: 20
Accepted
time: 2212ms
memory: 23072kb

input:

26 1000000
! 59739044
? 37748736
? 28249674
? 34779261
! 1408249
? 66289518
? 67108863
! 2772107
? 58719741
! 10498082
? 66052095
! 688328
! 49649064
? 49739239
! 12582912
! 33478607
? 0
! 26083666
! 20736
? 56016858
! 1097
! 47696511
? 40296265
? 48219897
! 62242430
! 58515375
? 17563672
! 62806902...

output:

0
0
0
0
0
1
0
1
0
0
0
1
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
1
1
0
1
1
1
1
1
1
1
0
1
0
0
0
1
0
0
0
1
1
0
0
1
0
0
1
1
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
1
1
0
1
0
1
0
0
0
1
0
1
0
0
1
1
1
1
1
1
0
0
0
0
1
1
0
0
1
1
0
0
0
0
1
1
1
1
1
0
1
0
0
1
1
0
0
1
1
1
1
1
1
1
1
1
0
0
0
1
0
0
0
0
1
1
0
1
1
1
1
...

result:

ok Accepted.

Subtask #3:

score: 20
Accepted

Test #21:

score: 20
Accepted
time: 1275ms
memory: 46824kb

input:

28 1000000
! 1081468
! 128476263
! 67930241
? 94304031
! 103698752
! 19982
! 198050624
? 249519591
? 71286719
? 255700799
! 103309888
! 819340
! 12852092
? 124739445
? 192734967
! 101320328
! 117594711
? 252032927
! 134267948
? 262940285
! 3155972
? 267876218
! 41984160
? 246413294
? 246824252
? 163...

output:

0
0
1
0
1
0
0
0
0
0
1
1
1
0
0
0
1
0
1
1
1
0
0
0
1
1
0
1
1
1
0
0
1
0
1
1
1
0
0
0
1
0
1
1
1
0
0
1
1
0
0
1
0
0
1
1
1
0
1
1
0
1
0
1
1
1
0
0
0
0
1
1
1
0
0
1
0
1
1
1
0
0
0
0
0
0
1
0
1
0
1
0
1
1
0
0
0
1
1
1
1
1
0
1
0
1
0
1
0
0
1
1
1
1
1
1
1
0
0
0
0
0
0
1
1
1
1
0
0
0
1
0
1
1
1
0
0
0
1
0
1
1
1
0
1
1
0
1
0
1
...

result:

ok Accepted.

Test #22:

score: 20
Accepted
time: 181ms
memory: 25244kb

input:

28 1000000
! 0
? 268435455
? 268435455
? 268435455
? 268435455
? 268435454
! 262144
! 2097152
? 268435455
? 266338303
! 0
? 268435455
? 268431359
? 268435455
? 268435199
? 268435455
! 0
? 268435455
? 268304383
? 268435455
? 267386871
! 0
! 0
! 0
! 8192
? 234881023
? 268435455
? 268435455
? 268435455...

output:

1
1
1
1
1
1
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
0
0
0
0
1
1
0
0
0
0
1
1
0
0
0
0
1
1
1
1
1
0
0
0
1
0
1
1
1
1
0
0
1
0
1
1
0
0
0
1
0
0
1
1
0
0
0
0
0
0
1
1
1
1
1
0
0
1
1
1
1
0
1
1
1
1
0
0
0
0
1
1
0
1
0
1
1
1
1
0
0
0
0
1
1
0
1
1
1
1
1
0
1
0
1
1
1
1
0
0
0
0
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
1
0
1
...

result:

ok Accepted.

Test #23:

score: 20
Accepted
time: 431ms
memory: 47508kb

input:

28 1000000
! 67108864
? 268369919
? 108724215
! 2621440
! 360576
? 259319807
? 62414335
? 267911039
? 268434111
! 204968
! 3670272
? 255844319
! 8404992
? 267643903
? 264239485
? 268435451
! 67469313
! 136314896
? 268435455
! 0
? 268361727
? 266268671
! 131074
? 268271607
! 16384
! 1705984
! 270464
...

output:

1
1
1
1
1
1
0
1
0
0
0
0
1
0
0
1
0
1
1
1
1
0
1
0
0
1
1
0
1
0
0
0
1
0
0
0
0
0
0
1
1
0
0
1
0
1
0
1
1
1
0
1
0
1
0
0
1
1
1
1
0
1
0
1
1
0
1
0
1
0
1
1
0
0
1
0
0
1
1
1
0
0
1
0
1
0
1
1
1
0
0
1
1
1
1
1
0
1
1
1
0
0
1
0
1
0
1
1
0
1
0
0
1
1
0
0
1
0
1
0
0
0
1
1
0
1
1
0
0
0
1
0
1
1
0
0
1
0
0
1
1
1
0
0
0
1
1
1
0
0
...

result:

ok Accepted.

Test #24:

score: 20
Accepted
time: 1347ms
memory: 45548kb

input:

28 1000000
! 1902096
? 81641694
? 247381723
? 268423692
! 117194752
? 75033877
? 226360807
! 88368128
? 38723567
! 50598934
! 144779282
? 130765271
! 211109508
! 9496640
? 259837397
? 192822463
! 17358848
! 23330881
! 199852673
? 201030356
! 8467396
? 249459704
! 142884899
! 34112802
! 167781384
? 1...

output:

0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
1
1
0
0
0
1
0
0
1
1
0
1
0
1
1
0
1
0
0
1
0
0
1
1
0
0
0
0
0
1
1
0
0
1
0
0
1
0
1
1
1
0
0
0
1
1
0
0
0
1
1
0
1
1
0
1
0
0
0
1
1
1
0
1
0
0
0
1
0
1
1
1
1
0
0
1
0
1
1
1
1
0
0
0
0
0
0
0
1
1
1
1
0
1
1
0
1
0
0
0
0
1
0
1
0
1
0
1
1
0
1
1
1
1
0
1
0
1
0
1
1
0
0
1
0
1
0
0
1
0
1
0
1
...

result:

ok Accepted.

Test #25:

score: 20
Accepted
time: 1687ms
memory: 46948kb

input:

28 1000000
! 210829378
? 36947522
? 259790155
? 268433343
? 233308142
? 205687805
! 262177
? 246208617
? 268173279
! 35651584
! 8520002
? 234749947
? 180634441
! 147279353
! 192794271
! 131076
? 268353534
? 130268453
? 101299305
? 228765468
! 33685506
! 557056
! 260
? 268434428
? 207609440
? 2572858...

output:

0
0
0
0
0
1
1
0
0
1
1
0
1
0
1
0
1
1
0
0
0
1
0
0
0
0
0
1
0
0
1
1
0
1
1
0
0
1
1
1
1
1
0
1
0
1
0
0
0
0
0
0
0
1
0
1
0
1
0
1
0
0
0
1
0
1
1
0
0
0
1
0
1
0
1
0
1
0
0
0
1
1
1
1
0
1
0
0
1
0
0
0
1
0
0
1
1
1
0
0
1
0
1
0
1
1
0
0
1
1
1
1
0
0
0
1
0
0
1
0
0
0
1
1
0
0
1
0
1
1
1
0
0
0
1
0
1
0
0
1
1
1
0
0
0
1
1
1
0
0
...

result:

ok Accepted.

Test #26:

score: 20
Accepted
time: 4836ms
memory: 47760kb

input:

28 1000000
! 64484791
! 33554496
! 134217748
? 15770753
? 234878457
! 112293486
! 268426430
? 168308817
! 8389248
? 251656191
? 267991807
? 151001904
? 201325631
? 218124361
! 33556752
! 67108864
! 4
! 265177583
! 263691254
! 206307327
? 268304383
? 268034047
! 266253730
? 6427266
? 268435455
? 1851...

output:

0
0
1
0
1
0
1
0
1
0
0
1
0
1
0
0
0
0
1
0
0
0
1
1
0
0
1
1
0
0
0
1
1
1
0
1
1
0
1
0
0
1
0
0
0
1
0
1
1
0
0
1
1
1
0
0
1
1
1
1
1
1
0
0
1
1
1
1
0
0
1
1
1
0
1
0
1
1
0
0
0
1
0
1
1
0
1
1
1
0
0
1
0
0
1
1
0
1
1
1
1
1
0
0
1
1
0
0
0
1
0
1
1
0
1
1
0
1
1
1
1
0
0
1
1
0
1
1
0
0
0
1
1
0
1
1
1
1
0
1
1
1
0
0
0
1
0
0
1
1
...

result:

ok Accepted.

Test #27:

score: 20
Accepted
time: 9874ms
memory: 46940kb

input:

28 1000000
! 4202592
? 262144
? 134217728
? 134217727
! 268433915
? 8667202
! 266174462
? 10487808
! 266338303
? 268435455
! 267370495
! 131072
? 268434879
! 248501679
! 0
? 268434935
! 268429303
? 125693919
? 268432895
? 1048704
! 257912703
! 72324
? 268337150
! 33619972
? 67108866
! 199097855
? 26...

output:

0
0
1
0
0
0
1
1
1
0
1
1
1
1
1
0
0
1
1
0
1
0
1
1
0
0
1
0
1
0
1
1
0
0
1
1
1
1
0
1
0
1
1
1
1
1
1
1
1
0
0
1
1
1
1
0
1
0
1
1
0
0
1
0
1
0
1
1
1
1
1
0
1
1
0
1
1
1
1
1
0
1
1
1
0
1
1
1
1
0
0
1
0
0
1
0
1
1
0
0
0
0
1
0
0
0
1
1
1
0
0
0
0
1
0
0
0
0
1
1
0
0
1
1
1
1
1
1
1
1
1
0
1
1
0
1
1
1
0
0
1
1
1
1
1
0
1
0
1
0
...

result:

ok Accepted.

Test #28:

score: 20
Accepted
time: 1296ms
memory: 46488kb

input:

28 1000000
! 268435455
? 268404569
! 201285633
! 268427264
? 201310256
! 126173184
! 266326028
? 268420376
? 134207050
! 268288000
? 267898882
? 268433315
! 87539712
? 267370496
! 257802240
? 266289152
! 134135808
! 268419072
? 268421951
? 268422248
! 175866400
! 268419072
? 268419104
? 201310208
? ...

output:

0
0
1
1
1
0
1
1
0
0
1
0
1
0
1
0
1
1
1
1
0
1
0
0
0
0
0
0
1
0
1
0
0
1
0
0
1
1
1
0
1
1
1
0
1
0
1
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
0
1
1
1
1
0
1
1
1
1
1
0
1
0
1
0
1
1
0
1
1
0
1
0
0
0
1
1
0
0
1
0
1
0
1
1
1
0
0
0
1
0
0
1
0
1
0
0
0
0
1
1
0
1
1
1
0
1
1
0
0
1
1
0
1
0
1
1
0
1
1
0
1
1
1
1
1
0
1
1
0
0
1
0
1
1
1
...

result:

ok Accepted.

Test #29:

score: 20
Accepted
time: 644ms
memory: 47540kb

input:

28 1000000
! 98304
! 17301505
! 246243328
? 268427255
! 103022880
! 33554432
? 268288300
? 66974465
? 268393616
! 250662912
! 148521024
? 268148687
? 260046591
? 268427804
? 268424330
! 152322048
! 268435071
! 220708864
! 186187776
? 268422639
? 268435287
? 268421745
! 249331729
! 204685312
! 244465...

output:

0
1
1
1
1
1
1
1
0
1
1
1
0
0
1
0
1
0
1
1
0
1
0
0
1
1
0
1
1
1
1
1
0
0
0
0
0
1
1
0
0
1
0
0
0
1
1
0
0
1
0
0
1
1
0
0
0
1
0
1
0
0
1
1
0
0
0
0
1
0
1
0
1
0
0
0
1
0
1
0
1
1
0
0
1
0
0
0
1
1
1
0
1
1
1
1
0
1
0
1
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
1
1
1
1
0
0
1
1
1
0
1
0
1
0
1
1
1
1
0
1
1
0
0
1
0
0
1
1
0
1
1
0
1
1
1
...

result:

ok Accepted.

Test #30:

score: 20
Accepted
time: 4137ms
memory: 47452kb

input:

28 1000000
! 102051418
? 2048
? 213870324
! 50323454
! 16908290
! 216060049
! 268237299
! 265797110
? 266959613
! 34131606
! 215308128
? 98433979
! 251658239
! 0
! 268434427
? 21560592
! 250565469
? 238864954
? 3670016
! 267384827
! 126104535
! 169446416
! 139149481
? 254782395
! 1581056
? 210929166...

output:

0
0
0
0
1
1
1
0
1
1
0
1
0
0
0
1
1
0
1
0
0
0
1
0
0
0
1
1
0
1
1
0
1
1
0
0
1
1
1
1
1
0
1
0
1
1
1
1
1
0
1
0
1
1
1
0
1
1
1
1
0
1
0
0
1
0
1
1
1
0
0
1
1
1
1
1
1
0
0
0
1
0
0
1
1
0
0
1
1
0
0
1
1
1
1
1
0
1
0
0
0
0
1
1
1
1
1
1
0
0
1
0
0
0
1
1
0
0
0
0
0
0
1
1
1
0
1
1
0
1
0
0
0
1
0
0
1
0
0
1
1
1
1
1
1
1
1
1
0
0
...

result:

ok Accepted.

Subtask #4:

score: 0
Time Limit Exceeded

Test #31:

score: 20
Accepted
time: 2219ms
memory: 142212kb

input:

30 1000000
! 33852274
? 1017904007
? 1046413001
! 151029382
? 466826079
? 250568375
! 6769874
! 2106474
? 536832803
? 209627867
! 167104971
? 1048372157
! 245380745
! 25174496
? 819646460
! 539548800
! 671358165
? 402955591
? 527753201
! 582494209
? 862862931
? 938974695
? 263672827
? 366968669
? 87...

output:

0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
1
0
1
1
0
0
0
1
1
0
0
1
1
0
0
0
1
0
0
0
0
0
1
0
0
1
1
0
1
0
0
0
0
1
1
0
0
0
1
0
0
1
0
0
0
1
0
0
1
1
0
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
0
0
1
0
1
1
0
1
0
0
0
1
1
1
1
0
1
1
0
1
1
1
0
1
0
1
1
0
1
0
1
0
1
0
0
0
0
0
0
1
1
1
1
1
1
0
0
1
0
0
1
0
1
1
1
...

result:

ok Accepted.

Test #32:

score: 20
Accepted
time: 229ms
memory: 45564kb

input:

30 1000000
! 16777216
? 1073741823
! 0
! 0
! 0
? 1073741823
? 1073741823
? 1056964607
? 1073741823
! 0
? 1073741823
! 0
! 0
? 1073741823
? 1073741823
! 0
! 0
? 1073741823
! 0
? 1069408255
! 0
? 1073741823
! 0
? 1073741823
! 0
? 1073741823
! 128
! 131072
? 1073741823
? 1073741823
? 1073741823
? 10737...

output:

1
0
0
1
0
1
1
1
1
0
1
0
1
1
1
1
1
1
0
1
1
1
0
1
1
0
0
1
1
0
1
1
0
0
0
1
0
0
0
0
1
0
1
0
0
0
1
0
1
1
0
0
1
1
1
1
1
0
0
0
1
0
0
0
1
1
1
1
0
1
1
1
0
0
0
0
0
0
0
1
1
1
0
0
1
0
0
0
0
1
1
1
1
0
0
1
0
0
0
1
1
1
1
1
1
1
0
0
0
0
0
1
1
0
0
0
0
0
1
0
0
1
1
0
0
1
0
0
1
0
0
1
0
0
0
1
0
1
1
1
1
0
0
1
1
0
0
1
1
0
...

result:

ok Accepted.

Test #33:

score: 20
Accepted
time: 891ms
memory: 145580kb

input:

30 1000000
! 1073661373
? 1069547518
? 1040187327
? 1064828927
! 268435584
! 54526017
! 536870912
? 1071644655
! 8519680
? 1071640575
! 1073741823
! 1064992
! 64
? 1072160767
? 805298175
? 1006628831
! 2752512
? 1073737724
! 1024
! 536870912
? 939524067
! 4204544
! 0
! 142671904
! 134742202
? 106482...

output:

0
0
0
1
0
1
1
1
0
1
1
0
1
0
1
1
1
0
1
0
1
0
1
0
0
0
1
1
1
1
0
1
0
0
1
0
1
1
1
1
0
0
0
1
0
1
1
1
0
0
0
1
1
1
0
0
1
1
1
1
0
0
1
1
1
1
0
1
1
1
1
1
0
0
1
1
0
0
0
0
0
1
0
1
0
0
1
0
1
1
1
1
0
0
0
0
0
1
0
1
1
0
0
1
0
0
1
1
1
1
1
1
1
0
1
1
0
1
1
0
1
0
1
1
1
0
1
0
1
0
0
0
1
0
1
1
1
0
1
0
0
0
1
1
1
0
1
0
0
1
...

result:

ok Accepted.

Test #34:

score: 20
Accepted
time: 3121ms
memory: 142780kb

input:

30 1000000
! 814786940
! 940688522
! 341410458
! 42352898
! 860209250
! 514633857
! 26763330
! 243310796
! 25600418
! 68363333
? 938056250
! 251896592
! 553651236
! 100810789
? 506984941
? 116056774
! 616784901
! 276957332
! 75829252
! 25231922
! 673186852
! 808545586
? 330911500
! 268996754
? 79272...

output:

0
1
0
0
0
0
1
0
0
0
1
1
1
1
1
0
0
1
1
0
1
0
0
0
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
0
0
1
0
0
0
1
1
0
0
0
0
1
1
0
0
1
0
1
1
1
0
1
0
0
1
0
1
0
1
0
1
1
0
0
1
1
0
1
0
0
0
1
1
0
0
0
1
0
0
0
0
1
1
0
0
0
1
0
0
1
1
0
0
0
1
1
0
1
1
1
0
0
0
0
0
1
1
1
1
1
0
1
1
0
0
1
0
0
1
0
1
0
0
1
1
0
1
1
0
1
0
0
0
0
0
0
1
0
0
1
...

result:

ok Accepted.

Test #35:

score: 20
Accepted
time: 6336ms
memory: 145756kb

input:

30 1000000
! 947623540
? 1073709055
! 536727820
! 757142973
? 514413951
! 541065216
? 1073741823
! 728124554
! 131072
! 2114632
? 1071349757
! 128
? 346158708
! 736032396
? 848072391
! 786688
? 463405431
? 348336648
! 1024
? 973078525
? 1073217535
? 270010037
? 804255743
! 471525397
? 1064302589
! 1...

output:

0
0
0
0
0
1
0
1
1
1
0
1
1
1
0
0
1
0
1
1
1
0
1
0
1
1
1
1
1
1
1
1
1
0
0
1
0
1
0
1
1
0
0
0
0
0
1
0
0
0
0
1
1
0
0
1
0
0
1
1
0
1
1
0
1
0
1
1
0
1
0
0
1
1
1
1
1
1
1
1
0
1
1
1
1
0
1
1
1
0
0
0
1
1
0
1
0
0
0
0
1
1
1
1
0
0
0
1
1
1
0
0
1
1
0
0
1
0
0
1
1
0
1
1
1
0
1
0
0
0
0
0
1
1
1
1
0
1
1
1
1
1
0
1
1
0
1
1
1
1
...

result:

ok Accepted.

Test #36:

score: 0
Time Limit Exceeded

input:

30 1000000
! 62316343
? 1073676223
! 2097160
! 359907021
! 0
! 138
? 1073463023
? 1006632947
! 67109000
? 1073741311
! 1037934173
! 326717363
? 838852607
? 74195224
! 4194434
? 86115012
! 276963330
! 137428992
! 0
? 398458847
! 247461197
! 790030063
! 1005752186
? 1023377407
? 276827768
? 1073740735...

output:

1
0
1
0
1
0
1
0
0
0
0
1
1
0
0
0
1
0
0
1
0
1
0
0
1
0
1
0
0
1
1
1
1
0
0
0
0
1
0
1
1
0
0
1
0
0
1
0
0
1
0
0
1
0
1
0
0
0
1
1
0
1
1
1
0
0
0
0
1
1
0
0
0
0
1
0
1
1
0
1
0
1
0
0
1
0
0
1
0
1
0
0
0
0
1
1
1
1
1
1
1
1
0
1
0
0
0
0
0
1
1
1
1
1
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
1
0
1
0
1
0
0
0
1
0
1
1
1
1
1
1
0
1
1
0
1
...

result:


Subtask #5:

score: 0
Time Limit Exceeded

Test #41:

score: 20
Accepted
time: 4799ms
memory: 504096kb

input:

32 1000000
! 2474971548
! 348268033
? 1055293046
? 3382525679
? 1805515707
? 3210332902
? 2805668987
? 4025974780
! 2217771280
! 176949664
! 4213841344
! 1477473321
? 3150869759
? 2127418041
! 1610631720
! 3624477314
! 2288149532
! 70909964
! 40117153
! 1343751456
? 3758095615
! 513059275
! 31956816...

output:

0
0
0
0
0
0
0
0
1
1
1
0
1
1
0
1
0
0
1
1
0
0
0
0
0
1
1
1
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
1
0
0
0
0
0
1
0
1
0
0
0
1
1
0
1
0
1
0
0
1
1
1
0
1
1
0
1
0
0
0
0
1
0
1
1
1
0
0
0
0
0
1
0
0
0
1
0
1
1
0
0
0
1
1
1
0
1
1
0
1
0
0
0
0
0
0
0
0
1
0
1
1
1
0
0
1
1
0
1
0
0
1
1
1
0
0
1
1
1
1
1
1
1
...

result:

ok Accepted.

Test #42:

score: 20
Accepted
time: 250ms
memory: 88664kb

input:

32 1000000
! 0
? 4294965247
? 4294967295
? 4278189567
? 4294967293
? 4294959103
? 4290772991
! 0
! 0
! 0
! 0
! 32768
? 4294967295
! 0
? 4294967295
! 0
! 0
? 4294967295
? 4160749567
? 4294967295
! 0
? 4294967295
? 4294967295
! 8192
! 0
? 3221225471
! 0
? 4294966783
! 0
? 4160749567
! 0
! 0
? 42949672...

output:

1
1
1
1
1
1
0
1
1
1
1
0
0
0
1
0
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
0
1
1
1
1
1
0
1
1
0
0
0
1
0
0
1
1
1
1
1
1
1
1
0
0
1
1
0
1
1
0
1
1
1
0
1
1
1
0
0
1
1
0
1
1
1
0
1
1
1
1
1
0
0
0
0
1
1
1
0
0
0
0
1
0
1
1
1
0
0
0
0
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
0
0
0
1
1
1
1
0
0
0
0
1
1
0
0
1
1
0
1
1
1
1
0
0
1
1
1
1
0
...

result:

ok Accepted.

Test #43:

score: 20
Accepted
time: 1901ms
memory: 535140kb

input:

32 1000000
! 0
! 67371008
? 4290772735
? 4294442943
? 3219118063
? 4158652415
? 4227186542
? 4294950911
? 3753869311
! 73728
! 34832
? 4025483231
! 1073741824
! 33555456
! 536870914
? 4026531839
? 4211015679
! 2560
? 4294967295
? 4294967279
? 4290510847
? 3137339390
! 268566528
? 2062530029
! 335544...

output:

0
0
0
0
1
0
0
0
1
1
0
1
1
0
1
0
0
1
0
0
0
0
1
1
1
1
0
0
0
1
1
1
0
0
1
0
0
0
0
0
0
1
0
1
0
1
0
1
0
1
0
0
1
1
0
1
1
1
1
1
1
1
0
0
0
0
1
0
0
0
1
0
0
1
0
0
1
1
0
1
0
0
1
0
1
1
0
0
0
0
1
1
0
1
1
0
1
1
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0
0
1
0
0
1
1
0
0
1
1
0
0
0
1
0
1
1
1
0
1
1
0
0
0
1
0
0
1
0
1
1
0
0
0
1
1
0
...

result:

ok Accepted.

Test #44:

score: 20
Accepted
time: 6132ms
memory: 535776kb

input:

32 1000000
! 1755841544
! 573047496
! 16778565
! 2785673864
? 129892336
! 3293577794
! 14942209
? 4191678459
! 565320
? 2291867647
! 136852497
! 372265921
? 2078127419
! 3524808720
? 3741015384
? 4007450330
! 1083707211
! 268443921
? 4113519611
! 1183502594
? 671233048
! 1113114717
? 3210182381
! 38...

output:

0
0
0
0
1
1
0
0
0
1
1
1
0
0
0
1
0
0
1
1
1
1
0
1
1
0
1
0
1
0
1
1
1
0
0
0
1
1
0
0
0
1
0
1
1
0
0
1
1
0
1
0
0
1
1
1
1
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
1
1
1
1
1
1
1
1
0
0
1
1
0
1
1
0
1
0
1
1
1
1
0
0
1
0
0
1
0
1
1
1
0
1
1
0
1
1
0
0
0
1
1
1
0
1
0
1
0
1
0
1
1
1
0
0
1
0
1
1
1
0
0
1
1
1
0
0
0
1
0
1
1
...

result:

ok Accepted.

Test #45:

score: 0
Time Limit Exceeded

input:

32 1000000
! 105373520
! 473126059
? 836554967
? 4294966655
? 1017917278
! 33554496
! 936097420
! 4098
? 4227334143
? 3217020903
? 4261402095
! 2064
? 388354464
! 33556480
? 4273994239
! 10502152
? 244136115
! 4194308
? 4294443007
! 131281
! 466808739
! 2361409608
! 225471362
! 131104
? 867749959
! ...

output:

0
0
0
0
0
0
0
0
1
0
0
1
1
1
1
0
0
0
0
0
1
1
0
0
1
0
0
1
1
0
0
1
1
0
1
1
1
0
1
0
0
0
0
0
1
0
0
0
0
1
1
1
1
0
0
0
1
1
0
1
1
1
0
1
0
0
0
1
0
0
1
1
0
1
0
0
0
1
1
1
1
1
1
1
0
1
0
0
0
1
1
1
1
1
0
1
1
0
0
0
0
0
0
1
1
1
0
1
0
1
1
0
0
0
1
1
0
0
0
1
1
1
1
1
1
1
1
1
0
1
1
1
0
0
1
0
0
1
0
1
0
1
1
0
0
0
1
0
0
0
...

result: