그리디 알고리즘
- String을 spilt 하게되면 String 배열이 나온다.
- "+"는 정규 표현식 문자로 인식하기 때문에 사용하고 싶으면 "\\+" 처리 해줘야함. (에러메시지 dangling quantifier '+')
import java.io.*;
public class Main {
static int answer = 0;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String data = br.readLine();
String[] str = data.split("-");
for (int i = 0; i < str.length; i++) {
int result = mySum(str[i]);
if (i == 0) {
answer += result; // 가장 앞 데이터일 땐 answer에 결괏값 더하기
} else {
answer -= result; // 나머지 데이터일 땐 answer에서 결괏값 빼기
}
}
System.out.println(answer);
}
public static int mySum(String a) {
int sum = 0;
String[] result = a.split("\\+");
for (int i = 0; i < result.length; i++) {
sum = sum + Integer.parseInt(result[i]);
}
return sum;
}
}
'코테 준비 > 알고리즘' 카테고리의 다른 글
[알고리즘] 그래프 (1) | 2024.03.26 |
---|---|
[알고리즘] 정수론 (1) | 2024.03.16 |
[알고리즘] 탐색 (1) | 2024.03.14 |
[자료구조] 정렬 (3) | 2024.03.12 |
[자료구조] 스택과 큐 (0) | 2024.03.06 |