#include using namespace std; using ll = long long; templatebool chmax(T &a, const T &b) { if (abool chmin(T &a, const T &b) { if (b>old)&1) == 0) continue; ll ug0 = rec(mask2, old); ll ug1 = B[old]-A[old]+A[last]; // 最後にlastの本を置く ll ma = max(ug0, ug1); chmin(mi, ma); } return dp[mask][last] = mi; } int main(){ cin.tie(0); ios::sync_with_stdio(false); // input cin >> N; FOR(i, 0, N){ cin >> A[i] >> B[i]; } FOR(msk, 0, 1LL<