結果
問題 |
No.193 筒の数式
|
ユーザー |
![]() |
提出日時 | 2016-01-09 11:23:06 |
言語 | Java (openjdk 23) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,056 bytes |
コンパイル時間 | 2,488 ms |
コンパイル使用メモリ | 85,484 KB |
実行使用メモリ | 53,444 KB |
最終ジャッジ日時 | 2024-09-19 13:15:00 |
合計ジャッジ時間 | 4,482 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 11 WA * 5 |
ソースコード
import java.io.*; import java.util.*; class Main { public static void out (Object o) { System.out.println(o); } public static int calc (String s) { int ret = 0 , work = 0 , i = 0 , len = s.length(); boolean addFlg = true; while (i < len) { while (i < len && s.charAt(i) != '+' && s.charAt(i) != '-') work = work * 10 + (s.charAt(i++) - '0'); ret = addFlg ? ret + work : ret - work; work = 0; if (i < len) addFlg = s.charAt(i++) == '+'; } return ret; } public static int solve (String s) { int ret = 0; int len = s.length(); for (int i = 0; i < len; i++) { String t = ""; for (int j = 0; j < len; j++) { t += s.charAt((i + j) % len) + ""; } if (!(t.charAt(0) + "").matches("[0-9]") || !(t.charAt(len - 1) + "").matches("[0-9]")) { continue; } ret = Math.max(ret , calc(t)); } return ret; } public static void main (String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); out(solve(br.readLine())); } }