結果
| 問題 |
No.405 ローマ数字の腕時計
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2019-12-08 08:47:29 |
| 言語 | Rust (1.83.0 + proconio) |
| 結果 |
AC
|
| 実行時間 | 1 ms / 2,000 ms |
| コード長 | 1,148 bytes |
| コンパイル時間 | 15,858 ms |
| コンパイル使用メモリ | 378,540 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-07-06 19:25:33 |
| 合計ジャッジ時間 | 16,994 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 27 |
ソースコード
fn getline() -> String {
let mut __ret = String::new();
std::io::stdin().read_line(&mut __ret).ok();
return __ret;
}
fn main() {
let line = getline();
let params: Vec<_> = line.trim().split(" ").collect();
let roman_num_now = params[0];
let dt: i32= params[1].parse().unwrap();
let num_now = match roman_num_now {
"I" => 1,
"II" => 2,
"III" => 3,
"IIII" => 4,
"V" => 5,
"VI" => 6,
"VII" => 7,
"VIII" => 8,
"IX" => 9,
"X" => 10,
"XI" => 11,
"XII" => 12,
_ => 0,
};
let mut num_after = num_now + dt;
if num_after % 12 == 0 {
num_after = 12;
} else {
num_after %= 12;
}
if num_after < 0 {
num_after += 12;
}
let roman_num_after = match num_after {
1 => "I",
2 => "II",
3 => "III",
4 => "IIII",
5 => "V",
6 => "VI",
7 => "VII",
8 => "VIII",
9 => "IX",
10 => "X",
11 => "XI",
12 => "XII",
_ => "error"
};
println!("{}", roman_num_after);
}