結果
問題 |
No.222 引き算と足し算
|
ユーザー |
|
提出日時 | 2021-03-14 19:58:53 |
言語 | Kuin (KuinC++ v.2021.9.17) |
結果 |
AC
|
実行時間 | 2 ms / 1,000 ms |
コード長 | 849 bytes |
コンパイル時間 | 1,908 ms |
コンパイル使用メモリ | 146,064 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-09-16 11:52:20 |
合計ジャッジ時間 | 3,199 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 31 |
ソースコード
func main() var s: []char :: cui@input() var state: int :: 0 var a: int var b: int var op: char var aop: char :: '+' var bop: char :: '+' for i(0, ^s - 1) switch(state) case 0 if(s[i] = '-' | s[i] = '+') do aop :: s[i] else do i :- 1 end if do state :+ 1 case 1 if(s[i] = '-' | s[i] = '+') do i :- 1 do state :+ 1 else do a :* 10 do a :+ s[i] $ int - '0' $ int end if case 2 do op :: s[i] do state :+ 1 case 3 if(s[i] = '-' | s[i] = '+') do bop :: s[i] else do i :- 1 end if do state :+ 1 case 4 do b :* 10 do b :+ s[i] $ int - '0' $ int end switch end for if(aop = '-') do a :: -a end if if(bop = '-') do b :: -b end if var ans: int :: 0 if(op = '-') do ans :: a + b else do ans :: a - b end if do cui@print("\{ans}\n") end func