Submission details
Task:Counting ones
Sender:aalto26hh_039
Submission time:2026-10-25 17:59:00 +0200
Language:C++ (C++20)
Status:READY
Result:
Test results
testverdicttime
#1ACCEPTED0.00 sdetails
#2ACCEPTED0.00 sdetails
#3ACCEPTED0.00 sdetails
#4ACCEPTED0.00 sdetails
#5ACCEPTED0.00 sdetails
#60.00 sdetails
#70.26 sdetails
#80.26 sdetails
#90.26 sdetails
#100.26 sdetails

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:41:21: warning: 'val1' may be used uninitialized [-Wmaybe-uninitialized]
   41 |     cout << val1 << " " << val2 << endl;
      |                     ^~~
input/code.cpp:23:9: note: 'val1' was declared here
   23 |     int val1, val2;
      |         ^~~~
input/code.cpp:41:28: warning: 'val2' may be used uninitialized [-Wmaybe-uninitialized]
   41 |     cout << val1 << " " << val2 << endl;
      |                            ^~~~
input/code.cpp:23:15: note: 'val2' was declared here
   23 |     int val1, val2;
      |               ^~~~

Code

#include <iostream>
#include <vector>
#include <cmath>
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n_values;
    cin >> n_values;

    vector<int> values;

    for(int i = 0; i < n_values; ++i)
    {
        int temp;
        cin >> temp;
        values.push_back(temp);
    }
    
    int max_ones = 0;
    int val1, val2;

    for (int i = 0; i < n_values - 1; ++i)
    {
        for (int j = i + 1; j < n_values; ++j)
        {
            int val = values[j] * values[i];
            if(__builtin_popcount(val) > max_ones)
            {
                max_ones = __builtin_popcount(val);
                val1 = values[i];
                val2 = values[j];
            }
            
        }
    }

    cout << max_ones << endl;
    cout << val1 << " " << val2 << endl;
}

Test details

Test 1

Verdict: ACCEPTED

input
5
42 100 73 94 1 

correct output
9
42 73

user output
9
42 73

Test 2

Verdict: ACCEPTED

input
5
44 19 3 94 55 

correct output
8
19 94

user output
8
19 94

Test 3

Verdict: ACCEPTED

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

correct output
15
893 438

user output
15
893 438

Test 4

Verdict: ACCEPTED

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

correct output
14
715 698

user output
14
715 698

Test 5

Verdict: ACCEPTED

input
100
221994 55181 870733 831328 206...

correct output
29
396737 649459

user output
28
14581 368163

Test 6

Verdict:

input
100
892861 947477 331980 209407 82...

correct output
29
825210 578859

user output
24
724329 990225

Test 7

Verdict:

input
10000
76308292 227339075 779918796 3...

correct output
50
978548139 589096701

user output
30
596018291 381828933

Test 8

Verdict:

input
10000
873429404 968540665 239439572 ...

correct output
49
661547021 435157931

user output
30
701341503 612237185

Test 9

Verdict:

input
10000
10374159 364461027 501874596 4...

correct output
50
313852607 889662850

user output
30
823836911 256366065

Test 10

Verdict:

input
10000
771320644 298761159 20751947 4...

correct output
49
516789275 257079921

user output
30
50663103 518491267