[白俊]1541号紛失括弧
問題とI/O
質問へのアクセス
この問題の論理は重要であり,入力形式では適切な位置のカッコで最適値を求める.
減算値を最大値にすると、最大値を求めることができます.
もう一度考えてみると、マイナス記号を除いて、すべての加算を先にして、それからマイナス記号でいいです.
これが実現すれば、入力した文字列を減算基準で分割し、加算演算を先に行い、減算を実行する最値を持つ整数を得るだけでよい.
後で引き算をすると、最高価格がもらえます.
コード実装
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] arr = br.readLine().split("-");
int sum = Integer.MAX_VALUE;
for(String i : arr) {
String[] arr2 = i.split("\\+");
int temp = 0;
for(String j : arr2) {
temp += Integer.parseInt(j);
}
if(sum == Integer.MAX_VALUE) sum = temp;
else sum -= temp;
}
System.out.println(sum);
}
}
Reference
この問題について([白俊]1541号紛失括弧), 我々は、より多くの情報をここで見つけました https://velog.io/@choiish98/백준-1541번-잃어버린-괄호テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol