[백준 1541] 잃어버린 괄호

Junyoung Park·2022년 7월 2일
0

코딩테스트

목록 보기
472/631
post-thumbnail

1. 문제 설명

잃어버린 괄호

2. 문제 분석

마이너스 기준으로 카운트해야 한다. 마이너스가 나왔는지 불리언 값으로 체크, 최댓값까지 모아서 전체 값에 반영하자

3. 나의 풀이

import Foundation

let expression = String(readLine()!)

func solution(expression: String) -> Int {
    var total = 0
    var tmp = ""
    var minus = false

    for digit in expression {
        if digit.isNumber {
            tmp += String(digit)
        } else {
            if !minus && digit == "+" {
                total += Int(tmp)!
                tmp = ""
            } else if !minus && digit == "-" {
                minus = true
                total += Int(tmp)!
                tmp = ""
            } else if minus {
                total -= Int(tmp)!
                tmp = ""
            }
        }
    }

    if minus {
        total -= Int(tmp)!
    } else {
        total += Int(tmp)!
    }
    return total
}

let total = solution(expression: expression)
print(total)
profile
JUST DO IT

0개의 댓글