Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: devilpoohs

Problemset: วิศวกรรมข้อมูล

Language: cpp

Time: 0.002 second

Submitted On: 2026-03-09 12:00:54

#include<bits/stdc++.h>
using namespace std;

string think(int i){
    // cout<<i<<' ';
    if(i==0) return "";
    string s;
    s=to_string(i%2)+think(i/2);
    return s;
}

int main(){
    // ios_base::sync_with_stdio(false);
    // cin.tie(NULL);
    int n;
    cin>>n;
    int ar[n];
    string s[n];
    int permu[n];
    for(int i=0;i<n;i++){
        cin>>ar[i];
        permu[i]=i;
    }
    for(int i=0;i<n;i++){
        s[i]=think(ar[i]);
        // cout<<s[i]<<'\n';
    }
    int mx=INT_MIN;
    do{
        string temp="";
        int sum=0;
        for(int i=0;i<n;i++){
            temp=temp+s[permu[i]];
            // cout<<permu[i]<<' ';
        }
        int pw=1;
        for(int i=0;i<temp.size();i++){
            sum+=((temp[i]-'0')*pw);
            pw*=2;
        }
        mx=max(mx,sum);
        // cout<<sum<<'\n';

    }while(next_permutation(permu,permu+n));
    
    cout<<mx;
    return 0;
}