結果
| 問題 |
No.49 算数の宿題
|
| コンテスト | |
| ユーザー |
kohaku_kohaku
|
| 提出日時 | 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;
}
}
kohaku_kohaku