結果
問題 | No.32 貯金箱の憂鬱 |
ユーザー | nekoziroo |
提出日時 | 2018-05-29 20:29:48 |
言語 | Rust (1.77.0 + proconio) |
結果 |
AC
|
実行時間 | 1 ms / 5,000 ms |
コード長 | 1,126 bytes |
コンパイル時間 | 12,340 ms |
コンパイル使用メモリ | 405,392 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-07-23 07:12:28 |
合計ジャッジ時間 | 13,423 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 1 ms
6,812 KB |
testcase_01 | AC | 1 ms
6,820 KB |
testcase_02 | AC | 1 ms
6,944 KB |
testcase_03 | AC | 1 ms
6,940 KB |
testcase_04 | AC | 1 ms
6,940 KB |
testcase_05 | AC | 1 ms
6,944 KB |
testcase_06 | AC | 1 ms
6,940 KB |
testcase_07 | AC | 1 ms
6,944 KB |
testcase_08 | AC | 1 ms
6,940 KB |
testcase_09 | AC | 1 ms
6,940 KB |
testcase_10 | AC | 1 ms
6,940 KB |
testcase_11 | AC | 1 ms
6,944 KB |
ソースコード
use std::io::{self, BufRead}; fn exchange(a: i32, mut y: i32) -> (i32, i32) { if y < a { return (0, y); } let mut results = (0, 0); loop { if y < a { results.1 += y; return results; } else { y = y - a; results.0 += 1; } } } fn main() { let stdin = io::stdin(); let mut line = stdin.lock().lines(); let mut l: i32 = line.next().unwrap().unwrap().parse().unwrap(); let mut m: i32 = line.next().unwrap().unwrap().parse().unwrap(); let mut n: i32 = line.next().unwrap().unwrap().parse().unwrap(); let mut result = 0; loop { if l < 10 && m < 4 && n < 25 { result += m + n + l; break; } if l != 0 && l >= 10 { let a = exchange(10, l); l = a.1; } if m != 0 && m >= 4 { let a = exchange(4, m); l += a.0; m = a.1 } if n != 0 && n >= 25 { let a = exchange(25, n); m += a.0; n = a.1; } } println!("{}", result); }