Submission

Status:

P-PPP--PPP

Subtask/Task Score:

70/100

Score: 70

User: him

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

Language: cpp

Time: 0.002 second

Submitted On: 2025-09-14 23:33:40

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

int arr[9];
int arr2[9];
int main(){
	ios::sync_with_stdio(0);cin.tie(0);
	int a;cin>>a;
	string ans;
	string ans2;
	for(int i=0;i<a;i++) {
	cin>>arr[i];
	arr2[i]=arr[i];
	}
	
	for(int i=0;i<a;i++){
		string s;
		int r;
		while(arr[i]>=2){
			r=arr[i]%2;
			s+='0'+r;
			arr[i]=arr[i]/2;
		}
		r=arr[i];
		s+='0'+r;
		reverse(s.begin(),s.end());
		ans+=s;
	}
	long long int p=1;
	long long int sum=0;
	reverse(ans.begin(),ans.end());
	for(auto e:ans){
		sum=sum+p*(e-'0');
		p=p*2;
	}
	sort(arr2,arr2+a,greater<int>());
	for(int i=0;i<a;i++){
		string s;
		int r;
		while(arr2[i]>=2){
			r=arr2[i]%2;
			s+='0'+r;
			arr2[i]=arr2[i]/2;
		}
		r=arr2[i];
		s+='0'+r;
		reverse(s.begin(),s.end());
		ans2+=s;
	}
	p=1;
	long long sum2=0;
	reverse(ans2.begin(),ans2.end());
	for(auto e:ans2){
		ans2+=p*(e-'0');
		p*=2;
	}
	cout<<max(sum,sum2);
	return 0;
}