結果

問題 No.3289 Make More Happy Connection
ユーザー atcoder8
提出日時 2025-10-03 22:29:56
言語 Rust
(1.83.0 + proconio)
結果
AC  
実行時間 57 ms / 2,000 ms
コード長 885 bytes
コンパイル時間 12,495 ms
コンパイル使用メモリ 399,984 KB
実行使用メモリ 24,232 KB
最終ジャッジ日時 2025-10-03 22:30:30
合計ジャッジ時間 12,697 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 24
権限があれば一括ダウンロードができます

ソースコード

diff #

use proconio::input;

fn main() {
    input! {
        n: usize,
        xy: [[usize; 2]; n],
    }

    let init_score = if xy[0][0] == xy[0][1] { xy[0][0] } else { 0 };
    let mut dp = [init_score; 2];
    for window in xy.windows(2) {
        let mut next_dp = [0_usize; 2];
        for from in 0..2 {
            for to in 0..2 {
                let add_score_1 = if window[0][1 - from] == window[1][to] {
                    window[1][to]
                } else {
                    0
                };
                let add_score_2 = if window[1][0] == window[1][1] {
                    window[1][0]
                } else {
                    0
                };
                next_dp[to] = next_dp[to].max(dp[from] + add_score_1 + add_score_2);
            }
        }
        dp = next_dp;
    }

    let max_score = dp[0].max(dp[1]);
    println!("{max_score}");
}
0