結果
問題 |
No.1729 ~サンプルはちゃんと見て!~ 16進数と8進数(1)
|
ユーザー |
|
提出日時 | 2022-09-07 03:12:24 |
言語 | Rust (1.83.0 + proconio) |
結果 |
AC
|
実行時間 | 1 ms / 2,000 ms |
コード長 | 1,047 bytes |
コンパイル時間 | 12,679 ms |
コンパイル使用メモリ | 379,540 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-11-22 03:31:40 |
合計ジャッジ時間 | 13,399 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 24 |
ソースコード
fn main() { let mut cc: Vec<char> = { let mut line = String::new(); std::io::stdin().read_line(&mut line).unwrap(); line.trim().chars().collect() }; cc.reverse(); let n = cc.len(); let mut counts = [0_u32; 8]; for i in (0..n).step_by(3) { let mut val = cc[i].to_digit(16).unwrap(); if i + 1 < n { val += 16 * (cc[i + 1]).to_digit(16).unwrap(); } if i + 2 < n { val += 256 * (cc[i + 2]).to_digit(16).unwrap(); } for _ in 0..4 { counts[(val % 8) as usize] += 1; val /= 8; if val == 0 && i + 3 >= n { break; } } } let max = *counts.iter().max().unwrap(); let mut max_indexes = vec![]; for (i, &cnt) in counts.iter().enumerate() { if cnt == max { max_indexes.push(i); } } print!("{}", max_indexes[0]); for &idx in max_indexes.iter().skip(1) { print!(" {}", idx); } println!(); }