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;
}