개발 노트/알고리즘[Kotlin]

프로그래머스 알고리즘 문제[문자열을 정수로 바꾸기]

juwon2 2024. 3. 11. 09:19

# 문제

문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요.

 

# 제한조건

s의 길이는 1 이상 5이하입니다.
s의 맨앞에는 부호(+, -)가 올 수 있습니다.
s는 부호와 숫자로만 이루어져있습니다.
s는 "0"으로 시작하지 않습니다.

 

# 입출력 예

예를들어 str이 "1234"이면 1234를 반환하고, "-1234"이면 -1234를 반환하면 됩니다.
str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다

 

 

# 풀이

class Solution {
    fun solution(s: String): Int {
        var answer = s.toInt()
        return answer
    }
}

 

-> 굳이 answer에다가 안담고 바로 return s,toInt()해줘도된다

바로 해주는게 더 가독성 있는것같다

 

 

# 다른사람의 풀이 

class Solution {
    fun solution(s: String) = s.toInt()
}

 

class Solution {
    fun solution(s: String): Int {
        return when(s[0]) {
            '+' -> s.subSequence(1, s.length).toString().toInt()
            '-' -> s.subSequence(1, s.length).toString().toInt() * (-1)
            else -> s.toInt()
        }
    }
}

 

-> +일때와 -일때를 나눠서 생각..