結果
問題 | No.49 算数の宿題 |
ユーザー |
![]() |
提出日時 | 2016-11-15 00:51:49 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 138 ms / 5,000 ms |
コード長 | 1,037 bytes |
コンパイル時間 | 2,362 ms |
コンパイル使用メモリ | 77,600 KB |
実行使用メモリ | 41,688 KB |
最終ジャッジ日時 | 2024-12-23 01:53:56 |
合計ジャッジ時間 | 4,433 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 10 |
ソースコード
import java.util.*;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String S = sc.next();String [] ss = S.split("\\*|\\+");int [] n = new int [ss.length];for(int i=0; i<ss.length; i++){n[i] = Integer.parseInt(ss[i]);}int r = n[0];int i = 1;int a = ind(S,"*");int b = ind(S,"+");int min = Math.min(a,b);while(true){String t =S.substring(min,min+1);if( t.equals("*") ){r=r+n[i];}else{r=r*n[i];}i++;S = S.substring(min+1);a = ind(S,"*");b = ind(S,"+");if(a==b){break;}min = Math.min(a,b);}System.out.println(r);}static int ind(String a, String b){int x = a.indexOf(b);if(x==-1){x=Integer.MAX_VALUE;}return x;}}