// #define _GLIBCXX_DEBUG // for STL debug (optional) #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; using ll = long long int; using int64 = long long int; template void chmax(T &a, T b) {a = max(a, b);} template void chmin(T &a, T b) {a = min(a, b);} template void chadd(T &a, T b) {a = a + b;} int dx[] = {0, 0, 1, -1}; int dy[] = {1, -1, 0, 0}; const int INF = 1LL << 29; const ll LONGINF = 1LL << 60; const ll MOD = 1000000007LL; ll dp[300010][2]; int main() { int N; cin >> N; vector X(N), Y(N); for(int i=0; i> X[i] >> Y[i]; auto cost = [&](int x, int y) { return x == y ? x : 0; }; fill(dp[0], dp[N+1], -1); dp[1][0] = dp[1][1] = cost(X[0], Y[0]); for(int i=1; i