結果
| 問題 |
No.2721 "Don't say N" Game
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-04-12 21:25:56 |
| 言語 | Rust (1.83.0 + proconio) |
| 結果 |
AC
|
| 実行時間 | 3 ms / 2,000 ms |
| コード長 | 728 bytes |
| コンパイル時間 | 12,665 ms |
| コンパイル使用メモリ | 386,816 KB |
| 実行使用メモリ | 5,248 KB |
| 最終ジャッジ日時 | 2024-10-02 22:58:19 |
| 合計ジャッジ時間 | 13,442 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | AC * 5 |
ソースコード
use proconio::input;
fn main() {
input! {
t: usize,
nn: [usize; t],
}
for n in nn {
println!(
"{}",
if find_divisors(n).len() % 2 == 0 {
'K'
} else {
'P'
}
);
}
}
/// Creates a sequence consisting of the divisors of `n`.
pub fn find_divisors(n: usize) -> Vec<usize> {
assert_ne!(n, 0, "`n` must be at least 1.");
let mut divisors = vec![];
for i in (1..).take_while(|&i| i <= n / i) {
if n % i == 0 {
divisors.push(i);
if n / i != i {
divisors.push(n / i);
}
}
}
divisors.sort_unstable();
divisors
}