CSES - Aalto Competitive Programming 2024 - wk8 - Homework C++ - Results
Submission details
Task:Counting ones
Sender:ZDHKLV
Submission time:2024-10-24 12:10:19 +0300
Language:C++ (C++11)
Status:READY
Result:
Test results
testverdicttime
#10.00 sdetails
#20.00 sdetails
#30.00 sdetails
#40.00 sdetails
#50.00 sdetails
#60.01 sdetails
#70.22 sdetails
#80.22 sdetails
#90.23 sdetails
#100.22 sdetails

Code

#include <bits/stdc++.h>

using namespace std;

int main() {

    ios_base::sync_with_stdio(0);

    int n;
    cin >> n;

    vector<int> x(n);
    for (int k = 0; k < n; k++)
        cin >> x[k];
    
    int a = 0, b = 1;
    int max = __builtin_popcount(x[a] * x[b]);

    for (int i = 0; i < n; i++) {
        for (int j = i+1; j < n; j++) {
            if (__builtin_popcount(x[i] * x[j]) > max) {
                max = __builtin_popcount(x[i] * x[j]);
                a = i;
                b = j;
            }
        }
    }

    cout << max << "\n" << a+1 << " " << b+1 << "\n";
    return 0;

}

Test details

Test 1

Verdict:

input
5
42 100 73 94 1 

correct output
9
42 73

user output
9
1 3

Test 2

Verdict:

input
5
44 19 3 94 55 

correct output
8
19 94

user output
8
2 4

Test 3

Verdict:

input
10
551 71 709 840 291 122 511 570...

correct output
15
893 438

user output
15
9 10

Test 4

Verdict:

input
10
968 901 548 173 973 856 715 61...

correct output
14
715 698

user output
14
7 9

Test 5

Verdict:

input
100
221994 55181 870733 831328 206...

correct output
29
396737 649459

user output
28
44 72

Test 6

Verdict:

input
100
892861 947477 331980 209407 82...

correct output
29
825210 578859

user output
24
30 31

Test 7

Verdict:

input
10000
76308292 227339075 779918796 3...

correct output
50
978548139 589096701

user output
30
1369 5010

Test 8

Verdict:

input
10000
873429404 968540665 239439572 ...

correct output
49
661547021 435157931

user output
30
3054 5142

Test 9

Verdict:

input
10000
10374159 364461027 501874596 4...

correct output
50
313852607 889662850

user output
30
591 5373

Test 10

Verdict:

input
10000
771320644 298761159 20751947 4...

correct output
49
516789275 257079921

user output
30
3891 9458