結果
問題 |
No.988 N×Mマス計算(総和)
|
ユーザー |
|
提出日時 | 2020-02-21 15:55:19 |
言語 | Rust (1.83.0 + proconio) |
結果 |
WA
|
実行時間 | - |
コード長 | 916 bytes |
コンパイル時間 | 10,703 ms |
コンパイル使用メモリ | 405,388 KB |
実行使用メモリ | 6,948 KB |
最終ジャッジ日時 | 2024-07-06 07:27:14 |
合計ジャッジ時間 | 11,785 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 10 WA * 9 |
ソースコード
use std::io::Read; fn main() { let mut input = String::new(); std::io::stdin().read_to_string(&mut input).ok(); let mut input = input.trim().split("\n"); let mut line = input.next().unwrap().split_whitespace(); let n: u64 = line.next().unwrap().parse().unwrap(); let m: usize = line.next().unwrap().parse().unwrap(); let k: u64 = line.next().unwrap().parse().unwrap(); let mut line = input.next().unwrap().split_whitespace(); let op: &str = line.next().unwrap(); let b: Vec<u64> = line.map(|c| c.parse().unwrap()).collect(); let a = input.map(|c| c.trim().parse::<u64>().unwrap()); let base: u64 = a.sum(); let mut ans: u64 = 0; let f: Box<dyn Fn(u64) -> u64> = match op { "+" => Box::new(|x: u64| base + x * n), _ => Box::new(|x: u64| x * base), }; for i in 0..m { ans += f(b[i]); } println!("{}", ans%k); }