int N; int A[1000][2]; int dp[1<<18][18]; inline int dist(int i, int j) { return A[i][1] - A[i][0] + A[j][0]; } { rd(N); REP(i, N) { int a, b; rd(a, b); A[i][0] = a; A[i][1] = b; } fill(dp[1], dp[1<