#include using namespace std; constexpr int INF = 1e9; int main(){ cin.tie(0); ios::sync_with_stdio(false); int N; cin >> N; vector As(N, 0); vector Bs(N, 0); for (int i = 0; i < N; ++i){ cin >> As[i] >> Bs[i]; Bs[i] -= As[i]; } vector> dp(1 << N, vector(N, INF)); // dp[used][tail] bit列 usedであらわされる本を使用済みで、一番右の本がtailであるときの、スコアの最小値 // dp[used|(1<