結果

問題 No.1013 〇マス進む
コンテスト
ユーザー urectanc
提出日時 2026-05-04 16:57:09
言語 Rust
(1.94.0 + proconio + num + itertools)
コンパイル:
/usr/bin/rustc_custom
実行:
./target/release/main
結果
WA  
実行時間 -
コード長 622 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 3,121 ms
コンパイル使用メモリ 200,780 KB
実行使用メモリ 7,976 KB
最終ジャッジ日時 2026-05-04 16:57:20
合計ジャッジ時間 6,769 ms
ジャッジサーバーID
(参考情報)
judge2_0 / judge1_1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 5 WA * 57
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

use itertools::Itertools;
use proconio::input;

fn main() {
    input! {
        n: usize, mut k: usize,
        p: [usize; n],
    }

    let mut pos = (0..n).collect_vec();
    let mut ans = (1..=n).collect_vec();
    let mut dp = p;
    while k > 0 {
        if k & 1 == 1 {
            for i in 0..n {
                ans[i] += dp[pos[i]];
            }
            pos.iter_mut()
                .zip(&dp)
                .for_each(|(pos, &dp)| *pos = (*pos + dp) % n);
        }
        dp = (0..n).map(|i| dp[i] + dp[(i + dp[i]) % n]).collect();
        k >>= 1;
    }

    println!("{}", ans.iter().join("\n"));
}
0