제출 #1340393

#제출 시각아이디문제언어결과실행 시간메모리
1340393lfreecsArt Exhibition (JOI18_art)C++20
10 / 100
1093 ms344 KiB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
using vl = vector<ll>;
using pll = pair<ll, ll>;
#define ff first
#define ss second

ll inf = 1e16;

ll ans = 0;

ll n;

vector<pll> v;

void f(ll i, ll mn, ll mx, ll sum)
{
    if (i == n)
    {
        if (mx == -inf || mn == inf)
            return;
        ans = max(ans, sum - (mx - mn));
        return;
    }
    else
    {
        ll a = v[i].ff, b = v[i].ss;

        f(i + 1, mn, mx, sum);

        f(i + 1,min(mn, a),max(mx, a), sum + b);

        return;
    }
}

int main()
{

    ios::sync_with_stdio(0);
    cin.tie(nullptr);

    cin >> n;
    v.assign(n, {0, 0});
    for (ll i = 0; i < n; i++)
    {
        cin >> v[i].ff >> v[i].ss;
    }

    f(0, inf, -inf, 0);

    cout << ans;

    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...