Submission
Status:
PPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: matcherbrainner
Problemset: วิศวกรรมข้อมูล
Language: cpp
Time: 0.004 second
Submitted On: 2026-10-08 15:25:46
#include<bits/stdc++.h>
using namespace std;
string toBin(int n) {
string b="";
while (n>0) {
b+=(n%2==1)?'1':'0';
n/=2;
}
reverse(b.begin(), b.end());
return b;
}
int main(){
int n;
cin>>n;
vector<string> v(n);
for(int i=0;i<n;i++){
int x;
cin>>x;
v[i]=toBin(x);
}
sort(v.begin(),v.end());
long long max=0;
bool ok=true;
while(ok){
string res="";
for(int i=0;i<n;i++){
res+=v[i];
}
long long val=0;
for(int i=0;i<res.length();i++){
val=val*2+(res[i]-'0');
}
if(val>max){
max=val;
}
ok=next_permutation(v.begin(),v.end());
}
cout<<max;
}