結果

問題 No.3726 Flawless Flow
コンテスト
ユーザー cacampu
提出日時 2026-09-19 15:41:46
言語 Rust
(1.97.1 + proconio + num + itertools + ACL)
コンパイル:
/usr/bin/rustc_custom
実行:
./target/release/main
結果
AC  
実行時間 7 ms / 2,000 ms
+ 757µs
コード長 724 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 867 ms
コンパイル使用メモリ 199,944 KB
実行使用メモリ 10,032 KB
最終ジャッジ日時 2026-09-19 15:41:50
合計ジャッジ時間 4,241 ms
ジャッジサーバーID
(参考情報)
judge3_0 / judge4_1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 59
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

use itertools::Itertools;
use proconio::{input, marker::Usize1};

fn main() {
    input! {
        n: usize,
        mut a: [Usize1; n],
        b: [Usize1; n],
    }
    let mut bi = vec![0; n];
    for i in 0..n {
        bi[b[i]] = i;
    }
    let mut p = vec![0; n];
    for i in 0..n {
        p[i] = bi[a[i]];
    }
    let mut ans = vec![a.clone()];
    for k in 0..n {
        let mut i = k % 2;
        while i < n - 1 {
            if p[i] > p[i + 1] {
                p.swap(i, i + 1);
                a.swap(i, i + 1);
            }
            i += 2;
        }
        ans.push(a.clone());
    }
    assert!(a == b);
    for r in ans {
        println!("{}", r.iter().map(|&val| val + 1).join(" "));
    }
}

0