Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: patsa_v

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

Language: cpp

Time: 0.002 second

Submitted On: 2025-10-16 14:11:31

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

string convert(int n)
{
    string s = "";
    while (n > 0)
    {
        s = to_string(n % 2) + s;
        n /= 2;
    }

    return s;
}

int main()
{
    int n;
    cin >> n;
    vector<int> v;
    for (int i = 0; i < n; i++)
    {
        int t;
        cin >> t;
        v.push_back(t);
    }


    sort(v.begin(),v.end());

    string temp = "";
    int max_num = 0;

    do
    {
        for (auto c : v)temp += convert(c);
        int sum = 0;
        for(int i = 0;i<temp.size();i++){
            sum+= (temp[i]- '0') * pow(2,temp.size()-i-1);
        }
        if(sum > max_num){
            max_num = sum;
        }
        temp.clear();
    } while (next_permutation(v.begin(), v.end()));

    cout << max_num;

    return 0;
}