結果

問題 No.1237 EXP Multiple!
コンテスト
ユーザー reicalgrst
提出日時 2026-10-23 00:37:27
言語 Rust
(1.99.0 + proconio + num + itertools + ACL)
コンパイル:
/usr/bin/rustc_custom
実行:
./target/release/main
結果
WA  
実行時間 -
コード長 1,053 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 886 ms
コンパイル使用メモリ 185,508 KB
実行使用メモリ 9,872 KB
最終ジャッジ日時 2026-10-23 00:38:17
合計ジャッジ時間 3,820 ms
ジャッジサーバーID
(参考情報)
judge3_0 / judge2_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 19 WA * 1
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

#![allow(non_snake_case)]
use proconio::*;

// https://maguro.dev/blog/debug-macro/
#[allow(unused_macros)]
macro_rules! debug {
    ($($a:expr),* $(,)*) => {
        #[cfg(debug_assertions)]
        eprintln!(concat!($("| ", stringify!($a), " = {:?} "),*, "|"), $(&$a),*);
    };
}

fn main() {
    std::thread::Builder::new()
        .stack_size(256 * 1024 * 1024)
        .spawn(solve)
        .unwrap()
        .join()
        .unwrap();
}

fn solve() {
    input! {
        n: usize,
        a: [usize; n]
    }

    let v = 10_usize.pow(9) + 7;

    if a.iter().any(|&u| 4 <= u) {
        println!("{}", v);
        return;
    }

    if a.contains(&0) {
        println!("-1");
        return;
    }

    let mut prod = 1;
    for &x in &a {
        match x {
            2 => {
                prod *= 4;
            }
            3 => {
                prod *= 3_usize.pow(6);
            }
            _ => {}
        }

        if v < prod {
            println!("{}", v);
            return;
        }
    }

    println!("{}", v % prod);
}
0