提出 #16060681


ソースコード 拡げる

Copy
use proconio::input;

fn main() {
    input! {
        n: usize,
        ab: [(i64, i64); n],
    };
    let abc = ab
        .iter()
        .map(|&(a_i, b_i)| (a_i, b_i, a_i - b_i))
        .collect::<Vec<_>>();
    let mut ab1 = abc
        .iter()
        .filter(|&(_, _, c_i)| *c_i < 0)
        .collect::<Vec<_>>();
    ab1.sort_by_key(|&(a_i, _, _)| a_i);
    let ab2 = abc
        .iter()
        .filter(|&(_, _, c_i)| *c_i == 0)
        .collect::<Vec<_>>();
    let mut ab3 = abc
        .iter()
        .filter(|&(_, _, c_i)| *c_i > 0)
        .collect::<Vec<_>>();
    ab3.sort_by_key(|&(_, b_i, _)| -b_i);
    let mut ans = 0;
    let mut v = 0;
    for (a_i, b_i, _) in ab1.iter() {
        v += a_i;
        ans = std::cmp::max(ans, v);
        v -= b_i;
    }
    for (a_i, b_i, _) in ab2.iter() {
        v += a_i;
        ans = std::cmp::max(ans, v);
        v -= b_i;
    }
    for (a_i, b_i, _) in ab3.iter() {
        v += a_i;
        ans = std::cmp::max(ans, v);
        v -= b_i;
    }
    println!("{}", ans);
}

提出情報

提出日時
問題 C - 魔法使い高橋君
ユーザ bouzuya
言語 Rust (1.42.0)
得点 100
コード長 1039 Byte
結果 AC
実行時間 38 ms
メモリ 8940 KB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 100 / 100
結果
AC × 3
AC × 45
セット名 テストケース
Sample 0_00.txt, 0_01.txt, 0_02.txt
All 0_00.txt, 0_01.txt, 0_02.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt, 1_18.txt, 1_19.txt, 1_20.txt, 1_21.txt, 1_22.txt, 1_23.txt, 1_24.txt, 1_25.txt, 1_26.txt, 1_27.txt, 1_28.txt, 1_29.txt, 1_30.txt, 1_31.txt, 1_32.txt, 1_33.txt, 1_34.txt, 1_35.txt, 1_36.txt, 1_37.txt, 1_38.txt, 1_39.txt, 1_40.txt, 1_41.txt
ケース名 結果 実行時間 メモリ
0_00.txt AC 6 ms 1968 KB
0_01.txt AC 2 ms 2108 KB
0_02.txt AC 1 ms 2064 KB
1_00.txt AC 1 ms 2012 KB
1_01.txt AC 3 ms 2068 KB
1_02.txt AC 2 ms 2140 KB
1_03.txt AC 1 ms 1968 KB
1_04.txt AC 14 ms 7244 KB
1_05.txt AC 19 ms 8068 KB
1_06.txt AC 18 ms 8100 KB
1_07.txt AC 21 ms 8940 KB
1_08.txt AC 28 ms 8276 KB
1_09.txt AC 31 ms 8300 KB
1_10.txt AC 29 ms 8116 KB
1_11.txt AC 34 ms 8244 KB
1_12.txt AC 25 ms 8116 KB
1_13.txt AC 27 ms 7860 KB
1_14.txt AC 29 ms 8360 KB
1_15.txt AC 34 ms 8376 KB
1_16.txt AC 31 ms 8120 KB
1_17.txt AC 36 ms 8232 KB
1_18.txt AC 29 ms 8608 KB
1_19.txt AC 33 ms 8868 KB
1_20.txt AC 37 ms 8004 KB
1_21.txt AC 29 ms 8852 KB
1_22.txt AC 33 ms 8624 KB
1_23.txt AC 36 ms 8700 KB
1_24.txt AC 30 ms 8096 KB
1_25.txt AC 31 ms 8640 KB
1_26.txt AC 34 ms 8444 KB
1_27.txt AC 38 ms 8612 KB
1_28.txt AC 38 ms 8688 KB
1_29.txt AC 32 ms 8356 KB
1_30.txt AC 32 ms 8660 KB
1_31.txt AC 33 ms 8400 KB
1_32.txt AC 38 ms 8440 KB
1_33.txt AC 28 ms 8336 KB
1_34.txt AC 33 ms 8632 KB
1_35.txt AC 32 ms 8448 KB
1_36.txt AC 32 ms 8716 KB
1_37.txt AC 32 ms 8296 KB
1_38.txt AC 31 ms 8508 KB
1_39.txt AC 30 ms 8628 KB
1_40.txt AC 35 ms 8816 KB
1_41.txt AC 30 ms 8328 KB