結果
問題 |
No.49 算数の宿題
|
ユーザー |
![]() |
提出日時 | 2025-04-29 18:14:56 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 89 ms / 5,000 ms |
コード長 | 890 bytes |
コンパイル時間 | 578 ms |
コンパイル使用メモリ | 8,192 KB |
実行使用メモリ | 13,056 KB |
最終ジャッジ日時 | 2025-04-29 18:15:02 |
合計ジャッジ時間 | 2,860 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 10 |
コンパイルメッセージ
Syntax OK
ソースコード
class Main def start a = wash(input.split("")).reverse v = 1 s = "*" while true x, flg = get_next_value a v = calc(v, x, s) break if not flg a, s = get_next_symbol a end echo ans = v return nil end private def calc(v, x, s) case s when "*" v * x when "+" v + x end end def get_next_symbol(a) s = a.pop return a, s end def get_next_value(a) s = "" while a.size > 0 && (0..9).map(&:to_s).include?(a.last) s += a.pop end flg = a.size > 0 ? true : false return s.to_i, flg end def wash(a) b = [] for ai in a case ai when "*" b += ["+"] when "+" b += ["*"] else b += [ai] end end return b end def echo(*x) print(*x) puts end def input = gets.chomp end Main.new.start