| Task: | Counting ones |
| Sender: | aalto26hh_011 |
| Submission time: | 2026-10-25 17:25:25 +0200 |
| Language: | C++ (C++20) |
| Status: | READY |
| Result: | ACCEPTED |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.00 s | details |
| #2 | ACCEPTED | 0.00 s | details |
| #3 | ACCEPTED | 0.00 s | details |
| #4 | ACCEPTED | 0.00 s | details |
| #5 | ACCEPTED | 0.00 s | details |
| #6 | ACCEPTED | 0.00 s | details |
| #7 | ACCEPTED | 0.20 s | details |
| #8 | ACCEPTED | 0.19 s | details |
| #9 | ACCEPTED | 0.19 s | details |
| #10 | ACCEPTED | 0.19 s | details |
Code
#include<bits/stdc++.h>
//#include<unordered_set>
// #pragma GCC optimize("Ofast")
using namespace std;
#define int long long
#define die(x) return cout << x << endl, 0
#define FI first
#define SE second
#define all(o) o.begin(), o.end()
#define endl '\n'
#define IOS ios::sync_with_stdio(0), cin.tie(0)
#define FILE freopen("input.txt", "r", stdin), freopen("output.txt", "w", stdout)
#define SZ(x) ((int)(x).size())
#define PB push_back
#define PF push_front
#define POB pop_back
#define POF pop_front
#define MP make_pair
typedef pair<int,int> pii;
typedef vector<int> vi;
typedef map<int,int> mpi;
typedef set<int> sti;
typedef vector<pii> vii;
typedef map<pii,int> mpii;
typedef set<pii> stii;
typedef long double ld;
typedef long long ll;
int gcd(int x,int y){ return (!y ? x : gcd(y, x%y)); }
int power(int x, int y) { return (!y ? 1 : power(x, y / 2) * power(x, y / 2) * (y % 2 ? x : 1)); }
int to_int(string sconvert){stringstream geek(sconvert);int xconvert = 0; geek >> xconvert; return xconvert;}
int fastMax(int x, int y) { return (((y-x)>>(32-1))&(x^y))^y; }
int fastMin(int x, int y) { return (((y-x)>>(32-1))&(x^y))^x; }
const int MAXN=3e5+30,MAX_LOG=30,MOD=1e9+7,INF=1e17;
const double PI = acos(-1);
int mod(int x) { return (x % MOD + MOD) % MOD; }
int a[MAXN];
int MAIN(){
int n;
cin>>n;
for(int i = 0;i < n; i++){
cin>>a[i];
}
int ans = 0;
pii best=MP(a[0], a[1]);
for(int i = 0;i < n; i++){
for(int j = i+1;j < n;j ++){
int cnt=__builtin_popcountll(a[i]* a[j]);
if(cnt>ans){
ans = cnt;
best = MP(a[i],a[j]);
}
}
}
cout<<ans<<endl;
cout<<best.FI<<" "<<best.SE<<endl;
return 0;
}
int32_t main(){
IOS;
int t=1;
//cin>>t;
while(t--)MAIN();
return 0;
}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 |
|---|
| 29 396737 649459 |
Test 6
Verdict: ACCEPTED
| input |
|---|
| 100 892861 947477 331980 209407 82... |
| correct output |
|---|
| 29 825210 578859 |
| user output |
|---|
| 29 825210 578859 |
Test 7
Verdict: ACCEPTED
| input |
|---|
| 10000 76308292 227339075 779918796 3... |
| correct output |
|---|
| 50 978548139 589096701 |
| user output |
|---|
| 50 978548139 589096701 |
Test 8
Verdict: ACCEPTED
| input |
|---|
| 10000 873429404 968540665 239439572 ... |
| correct output |
|---|
| 49 661547021 435157931 |
| user output |
|---|
| 49 661547021 435157931 |
Test 9
Verdict: ACCEPTED
| input |
|---|
| 10000 10374159 364461027 501874596 4... |
| correct output |
|---|
| 50 313852607 889662850 |
| user output |
|---|
| 50 313852607 889662850 |
Test 10
Verdict: ACCEPTED
| input |
|---|
| 10000 771320644 298761159 20751947 4... |
| correct output |
|---|
| 49 516789275 257079921 |
| user output |
|---|
| 49 516789275 257079921 |
