안녕하세요. 이번에는 프로그래머스 문자열을 정수로 바꾸기 문제를 풀어보려고 합니다.
https://school.programmers.co.kr/learn/courses/30/lessons/12925
Problem
문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요.
[제한 사항]
○ s의 길이는 1 이상 5 이하입니다.
○ s의 맨 앞에는 부호(+, -)가 올 수 있습니다.
○ s는 부호와 숫자로만 이루어져 있습니다.
○ s는 "0"으로 시작하지 않습니다.
Solution
class Solution {
fun solution(s: String): Int {
return s.toInt()
}
}
이번 문제는 코틀린에서 제공해 주는 toInt()를 사용하면 쉽게 해결할 수 있는 문제였다. 그래도 공부 겸 다른 사람의 코드를 좀 더 확인해 봤는데 비슷하지만 조금 다르게 접근한 사람의 코드가 있어서 첨부해 본다.
1. 다른 사람 코드
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()
}
}
}
when을 사용해서 처음 자리가 양수인지 음수인지를 파악한 후 subSequence로 문자열을 자르고 최종적으로 int로 출력해 주는 방식으로 접근한 코드였다.
Performance
1. 내가 작성한 코드 | 2. 다른 사람 코드 |
|
|
반응형
'프로그래머스 Algorithm' 카테고리의 다른 글
[프로그래머스] 하샤드 수 Kotlin (0) | 2023.11.14 |
---|---|
[프로그래머스] 정수 내림차순으로 배치하기 Kotlin (2) | 2023.11.13 |
[프로그래머스] 자릿수 더하기 Kotlin (4) | 2023.11.11 |
[프로그래머스] x만큼 간격이 있는 n개의 숫자 Kotlin (0) | 2023.11.10 |
[프로그래머스] 짝수와 홀수 Kotlin (0) | 2023.11.09 |