It's going to be one day 🍀

안녕하세요! 매일 매일 공부하려고 노력하는 백엔드 개발자 지망생의 공부 흔적입니다.

코테 준비/알고리즘

[알고리즘] 그리디

2jin2 2024. 3. 15. 00:00

그리디 알고리즘

 

- 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