Submission #1281848

#TimeUsernameProblemLanguageResultExecution timeMemory
1281848hackstarArt Exhibition (JOI18_art)C++20
10 / 100
5 ms644 KiB
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define ull unsigned ll
#define pb emplace_back
//#define mp make_pair
#define ALL(x) (x).begin(),(x).end()
#define rALL(x) (x).rbegin(),(x).rend()
#define srt(x) sort(ALL(x))
#define rev(x) reverse(ALL(x))
#define rsrt(x) sort(rALL(x))
#define sz(x) (int)(x.size())
#define inf 1e16
#define pii pair<int,int>
#define lb(v,x) (int)(lower_bound(ALL(v),x)-v.begin())
#define ub(v,x) (int)(upper_bound(ALL(v),x)-v.begin())
#define uni(v) v.resize(unique(ALL(v))-v.begin())
void die(string S){puts(S.c_str());exit(0);}
#define int long long
const int mod=1e9+7;
void solve()
{
	int n;
	cin>>n;
	vector<pii>a(n);
	for(auto &[x,y]:a)
		cin>>x>>y;
	int ans=-inf;
	for(int i=0;i<(1<<n);i++)
	{
		int s=0,mx=-inf,mn=inf;
		for(int j=0;j<n;j++)
			if(i>>j&1)
				s+=a[j].second,mx=max(mx,a[j].first),mn=min(mn,a[j].first);
		if(!i)
			continue;
		//cout<<s-mx+mn<<'\n';
		ans=max(ans,s-mx+mn);
	}
	cout<<ans;
}
signed main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	int t=1;
	#ifdef CM
		freopen("input.txt","r",stdin);
		freopen("output.txt","w",stdout);
	#endif
	//cin>>t;
	while(t--)
		solve();
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...