#include #include #include #include using namespace std; using ll = long long; void chmax(ll& a, ll b){a=max(a, b);} int main(void){ int n; cin >> n; vector x(n), y(n); for(int i=0; i> x[i] >> y[i]; vector dp(2); dp[0]=(x[0]==y[0]?x[0]:0); dp[1]=(x[0]==y[0]?x[0]:0); for(int i=1; i old(2); swap(old, dp); ll ad1, ad2=(x[i]==y[i]?x[i]:0); //x[i-1] x[i] y[i] ad1=(x[i-1]==x[i]?x[i]:0); chmax(dp[0], old[1]+ad1+ad2); //x[i-1] y[i] x[i] ad1=(x[i-1]==y[i]?y[i]:0); chmax(dp[1], old[1]+ad1+ad2); //y[i-1] x[i] y[i] ad1=(y[i-1]==x[i]?x[i]:0); chmax(dp[0], old[0]+ad1+ad2); //y[i-1] y[i] x[i] ad1=(y[i-1]==y[i]?y[i]:0); chmax(dp[1], old[1]+ad1+ad2); } cout << max(dp[0], dp[1]) << endl; return 0; }