// #pragma GCC optomize ("Ofast")
// #pragma GCC optomize ("unroll-loops")
// #pragma GCC target ("avx,avx2,fma")
#include <bits/stdc++.h> 
  
#define F first
#define S second 
#define ll long long
#define int long long
#define pb push_back
#define all(x) (x.begin(),x.end())
#define	ios	ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);	
 
using namespace std;
  
const ll N = 3e5+9, INF = 1e18 , inf = 1e9+9, mod = 1e9+9;
double a[N];
double b[N];
signed main(){
	ios;
	int tt=1;
//	cin>>tt;
	while(tt--){
		int n;
		cin>>n;
		for(int i=1;i<=n;i++){
			cin>>a[i]>>b[i];
		}
		vector<double>v;
		for(int i=1;i<=n;i++)v.pb(a[i]);
		for(int i=1;i<=n;i++)v.pb(b[i]);
		double ans=0;
		for(int mask=0;mask<(1<<(2ll*n));mask++){
			double suml=0.0;
			double sumr=0.0;
			int cnt=0;
			for(int i=0;i<v.size();i++){
				if((1<<i)&mask){
					if(i<=n-1)suml+=v[i];
					else sumr+=v[i];
					cnt++;
				}
			}
//			cout<<suml<<" "<<sumr<<" "<<cnt<<'\n';
			ans=max(ans,min(suml-double(cnt),sumr-double(cnt)));
		}		
		cout<<fixed<<setprecision(4)<<ans;
	}
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |