QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#931993#10155. Bit Counting SequenceZawos#RE 19ms11176kbC++201.3kb2025-03-12 02:28:592025-03-12 02:29:00

Judging History

This is the latest submission verdict.

  • [2025-03-12 02:29:00]
  • Judged
  • Verdict: RE
  • Time: 19ms
  • Memory: 11176kb
  • [2025-03-12 02:28:59]
  • Submitted

answer

#include <bits/stdc++.h>
#define FOR(i,a,b) for (int i = (a); i < (b); i++)
using namespace std;
using ll=long long;
//上
int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    int t; cin >> t;
    while(t--){
        ll n; cin >> n;
        vector<ll> v(n);
        FOR(i,0,n) cin >> v[i];
        if(n == 1){
            ll x = 1;
            for(int i = 0; i < v[0];i++) x*=2;
            x--;
            cout<<x<<'\n';
        }else{
            pair<ll,ll> pa ={-2,-1};
            for(int i = 1; i < n; i++){
                if(v[i-1] - v[i] > pa.first){
                    pa = {v[i-1]-v[i],i};
                }
            }
            vector<ll> ans(n);
            ll x = 1;
            for(int i = 1; i <=pa.first+1;i++) x*=2;

            for(int j = pa.first+2; j <=pa.first+v[pa.second];j++) x^=(1LL<<j);
            ans[pa.second] = x;
            for(int i = pa.second-1; i>=0;i--) ans[i] = ans[i+1]-1;
            for(int i = pa.second+1;i <n;i++) ans[i] = ans[i-1]+1;
            bool ok = true;
            for(int i = 0 ; i < n; i++){
                if(ans[i] <0 || __builtin_popcountll(ans[i])!= v[i]) ok = false;
            }
            if(ok){
            cout<<ans[0]<<'\n';
            }else cout<<-1<<'\n';
        }
    }
}

詳細信息

Test #1:

score: 100
Accepted
time: 0ms
memory: 3584kb

input:

4
5
3 3 4 1 2
3
2 1 2
2
60 60
2
8 0

output:

13
3
2305843009213693949
-1

result:

ok 4 lines

Test #2:

score: 0
Accepted
time: 19ms
memory: 10980kb

input:

1
500000
9 9 10 9 10 10 11 8 9 9 10 9 10 10 11 9 10 10 11 10 11 11 12 8 9 9 10 9 10 10 11 9 10 10 11 10 11 11 12 9 10 10 11 10 11 11 12 10 11 11 12 11 12 12 13 3 4 4 5 4 5 5 6 4 5 5 6 5 6 6 7 4 5 5 6 5 6 6 7 5 6 6 7 6 7 7 8 4 5 5 6 5 6 6 7 5 6 6 7 6 7 7 8 5 6 6 7 6 7 7 8 6 7 7 8 7 8 8 9 4 5 5 6 5 6 ...

output:

100297

result:

ok single line: '100297'

Test #3:

score: 0
Accepted
time: 5ms
memory: 3584kb

input:

1000
33
2 2 3 1 2 2 3 2 3 3 4 1 2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 1 2 2 3 2 3
209
3 2 3 3 4 1 2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 1 2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5 6 1 2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5 6 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5 6 3 4 4 5 4 5 5 6 4 5 ...

output:

5
11
10
15
17
3
17
2
2
7
4
4
10
1
17
10
19
13
3
4
7
4
7
15
8
14
15
8
3
17
2
12
1
11
16
4
12
4
2
5
7
19
12
2
7
3
10
2
0
0
11
7
10
7
1
3
11
16
9
9
15
15
1
2
16
9
9
5
9
19
8
17
7
15
2
12
16
2
6
17
8
16
3
7
14
6
4
18
3
10
11
3
1
14
8
16
10
12
19
8
1
12
19
4
2
12
8
10
6
8
7
7
1
15
12
18
8
4
8
5
4
12
10
1...

result:

ok 1000 lines

Test #4:

score: 0
Accepted
time: 6ms
memory: 3712kb

input:

1000
115
2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 1 2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5 6 1 2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5 6 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5 6 3 4 4 5 4 5 5 6 4 5 5 6 5 6 6 7 1 2 2 3
81
2 3 2 3 3 4 1 2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 1 2 2 3 2 3 3 ...

output:

17
10
9
8
9
0
19
16
14
10
16
9
10
13
8
7
19
16
5
2
3
16
13
0
5
15
12
5
9
11
9
6
14
19
5
13
10
9
16
11
15
0
12
7
6
19
4
10
5
15
3
13
10
8
8
7
19
19
15
6
2
19
9
2
7
6
14
6
4
9
19
3
17
10
3
16
7
5
3
12
18
14
1
2
14
0
5
1
11
17
14
2
0
5
8
9
4
17
16
19
6
18
4
2
1
4
12
7
11
6
5
4
2
1
8
19
6
11
14
19
14
3
...

result:

ok 1000 lines

Test #5:

score: 0
Accepted
time: 1ms
memory: 3584kb

input:

61
1
0
1
1
1
2
1
3
1
4
1
5
1
6
1
7
1
8
1
9
1
10
1
11
1
12
1
13
1
14
1
15
1
16
1
17
1
18
1
19
1
20
1
21
1
22
1
23
1
24
1
25
1
26
1
27
1
28
1
29
1
30
1
31
1
32
1
33
1
34
1
35
1
36
1
37
1
38
1
39
1
40
1
41
1
42
1
43
1
44
1
45
1
46
1
47
1
48
1
49
1
50
1
51
1
52
1
53
1
54
1
55
1
56
1
57
1
58
1
59
1
60

output:

0
1
3
7
15
31
63
127
255
511
1023
2047
4095
8191
16383
32767
65535
131071
262143
524287
1048575
2097151
4194303
8388607
16777215
33554431
67108863
134217727
268435455
536870911
1073741823
2147483647
4294967295
8589934591
17179869183
34359738367
68719476735
137438953471
274877906943
549755813887
1099...

result:

ok 61 lines

Test #6:

score: 0
Accepted
time: 18ms
memory: 11176kb

input:

1
500000
27 28 28 29 28 29 29 30 27 28 28 29 28 29 29 30 28 29 29 30 29 30 30 31 27 28 28 29 28 29 29 30 28 29 29 30 29 30 30 31 28 29 29 30 29 30 30 31 29 30 30 31 30 31 31 32 27 28 28 29 28 29 29 30 28 29 29 30 29 30 30 31 28 29 29 30 29 30 30 31 29 30 30 31 30 31 31 32 28 29 29 30 29 30 30 31 29 ...

output:

1099510361352

result:

ok single line: '1099510361352'

Test #7:

score: 0
Accepted
time: 1ms
memory: 3584kb

input:

625
4
0 0 0 0
4
0 0 0 1
4
0 0 0 2
4
0 0 0 3
4
0 0 0 4
4
0 0 1 0
4
0 0 1 1
4
0 0 1 2
4
0 0 1 3
4
0 0 1 4
4
0 0 2 0
4
0 0 2 1
4
0 0 2 2
4
0 0 2 3
4
0 0 2 4
4
0 0 3 0
4
0 0 3 1
4
0 0 3 2
4
0 0 3 3
4
0 0 3 4
4
0 0 4 0
4
0 0 4 1
4
0 0 4 2
4
0 0 4 3
4
0 0 4 4
4
0 1 0 0
4
0 1 0 1
4
0 1 0 2
4
0 1 0 3
4
0 1 ...

output:

-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-...

result:

ok 625 lines

Test #8:

score: 0
Accepted
time: 2ms
memory: 3584kb

input:

1000
50
26 27 26 27 27 28 26 27 27 28 27 28 28 29 25 26 26 27 26 27 27 28 26 27 27 28 27 28 28 29 26 27 27 28 27 28 28 29 27 28 28 29 28 29 29 30 1 2 2 3
50
20 19 20 20 21 16 17 17 18 17 18 18 19 17 18 18 19 18 19 19 20 17 18 18 19 18 19 19 20 18 19 19 20 19 20 20 21 17 18 18 19 18 19 19 20 18 19 19...

output:

1073741778
4194235
966
32711
148
77
8589934589
71
8388560
8140
4065
288230376151711688
1073741786
68719476713
8589934562
45
35184372088784
75
-1
4078
16777149
4294967235
137438953454
8388584
32753
17592186044351
35184372088795
16777194
4027
144
76
2199023255509
134217708
131048
147
2251799813685220
...

result:

ok 1000 lines

Test #9:

score: 0
Accepted
time: 1ms
memory: 3584kb

input:

1000
50
4 3 4 4 5 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5 6 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5 6 3 4 4 5 4 5 5 6 4 5 5 6 5
50
5 3 4 4 5 4 5 5 6 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5 6 3 4 4 5 4 5 5 6 4 5 5 6 5 6 6 7 2 3 3 4 3 4 4 5 3
50
19 19 20 18 19 19 20 19 20 20 21 18 19 19 20 19 20 20 21 19 20 20 21 20 21 21 22 1 2 2...

output:

75
151
4194277
8796093022151
39
4398046511099
56
1099511627742
36028797018963963
144115188075855797
72057594037927931
576460752303423456
-1
2097107
1099511627716
16777161
997
32700
2251799813685224
1125899906842599
149
9007199254740974
144115188075855815
151
153
36028797018963889
156
67108831
112589...

result:

ok 1000 lines

Test #10:

score: 0
Accepted
time: 1ms
memory: 3584kb

input:

1000
50
12 12 13 10 11 11 12 11 12 12 13 11 12 12 13 12 13 13 14 1 2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5
50
18 17 18 18 19 17 18 18 19 18 19 19 20 17 18 18 19 18 19 19 20 18 19 19 20 19 20 20 21 1 2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 2 3 3 4 3
50
19 18 19 19 20 18 19 19 20 19 20 20 21...

output:

16365
2097123
4194227
146
8168
80
149
8138
1125899906842576
281474976710623
143
144115188075855810
274877906875
246
67108842
32701
73
140737488355254
562949953421234
35184372088827
21
2199023255475
18014398509481934
70368744177659
68
2251799813685205
1048541
2147483639
32738
34359738299
900719925474...

result:

ok 1000 lines

Test #11:

score: 0
Accepted
time: 17ms
memory: 10980kb

input:

1
500000
32 32 33 32 33 33 34 30 31 31 32 31 32 32 33 31 32 32 33 32 33 33 34 31 32 32 33 32 33 33 34 32 33 33 34 33 34 34 35 30 31 31 32 31 32 32 33 31 32 32 33 32 33 33 34 31 32 32 33 32 33 33 34 32 33 33 34 33 34 34 35 31 32 32 33 32 33 33 34 32 33 33 34 33 34 34 35 32 33 33 34 33 34 34 35 33 34 ...

output:

-1

result:

ok single line: '-1'

Test #12:

score: 0
Accepted
time: 3ms
memory: 3584kb

input:

1000
50
33 32 33 33 34 32 33 33 34 33 34 34 35 32 33 33 34 33 34 34 35 33 34 34 35 34 35 35 36 31 32 32 33 32 33 33 34 32 33 33 34 33 34 34 35 32 33 33 34 33
50
37 38 37 38 38 39 37 38 38 39 38 39 39 40 37 38 38 39 38 39 39 40 38 39 39 40 39 40 40 41 37 38 38 39 38 39 39 40 38 39 39 40 39 40 40 41 3...

output:

137438953379
4398046511042
4194171
17179869085
274877906782
68719476630
4294967236
8589926351
4398046510832
68719476666
549755813809
268435401
17179868920
549755813776
34359738255
68719476566
2147481576
134217675
4294967167
137438953390
268435399
2147483471
17179869093
68719476631
4294967184
8589934...

result:

ok 1000 lines

Test #13:

score: 0
Accepted
time: 0ms
memory: 3584kb

input:

1000
20
59 59 5 8 56 42 0 55 2 49 35 51 31 37 23 58 14 44 45 42
20
34 36 58 41 60 31 17 6 14 4 28 27 13 17 41 26 2 21 17 53
20
60 40 6 10 43 47 15 58 36 53 58 24 3 40 33 11 19 20 25 48
20
49 35 41 8 14 25 21 44 9 23 6 31 22 37 49 50 18 58 11 51
20
15 56 24 51 5 6 46 0 48 29 41 30 5 29 54 59 21 19 53...

output:

-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
...

result:

ok 1000 lines

Test #14:

score: 0
Accepted
time: 5ms
memory: 3712kb

input:

1000
280
1 2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 1 2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5 6 1 2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5 6 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5 6 3 4 4 5 4 5 5 6 4 5 5 6 5 6 6 7 1 2 2 3 2 3 3 4 2 3 3 4 3 4 4 5 2 3 3 4 3 4 4 5 3 4 4 5 4 5 5 6 2 3...

output:

16
16
11
6
10
5
14
0
2
18
3
6
19
7
17
13
7
18
18
4
0
16
0
3
17
1
10
14
3
0
5
11
6
10
2
13
0
14
0
8
3
8
13
8
7
18
7
19
9
1
9
19
0
16
6
17
17
1
6
9
11
5
12
19
7
11
4
7
1
9
13
4
16
13
9
19
8
4
1
4
12
18
4
8
14
16
17
1
16
5
1
7
10
9
13
9
3
14
16
17
9
16
10
4
12
16
1
16
4
15
1
0
12
18
10
6
13
16
15
6
12
...

result:

ok 1000 lines

Test #15:

score: -100
Runtime Error

input:

1000
2
32 48
2
32 49
2
32 50
2
32 51
2
32 52
2
32 53
2
32 54
2
32 55
2
32 56
2
32 57
2
32 58
2
32 59
2
32 60
2
33 0
2
33 1
2
33 2
2
33 3
2
33 4
2
33 5
2
33 6
2
33 7
2
33 8
2
33 9
2
33 10
2
33 11
2
33 12
2
33 13
2
33 14
2
33 15
2
33 16
2
33 17
2
33 18
2
33 19
2
33 20
2
33 21
2
33 22
2
33 23
2
33 24
2...

output:


result: