[프로그래머스] 2021 KaKao Intern 숫자 문자열과 영단어 in Kotlin

박준규·2021년 12월 14일
0

알고리즘

목록 보기
6/39

Python에서 풀었던 아이디어와 동일하게 접근했습니다. 단지 문법만 다를 뿐 안의 프로세스는 동일합니다.

fun main(args: Array<String>) {
    println(solution("one4seveneight"))
    println(solution("23four5six7"))
    println(solution("2three45sixseven"))
    println(solution("123"))
}

fun solution(s: String): Int {
    val dicNumber: HashMap<String, String>
    dicNumber = hashMapOf(
        "one" to "1",
        "two" to "2",
        "three" to "3",
        "four" to "4",
        "five" to "5",
        "six" to "6",
        "seven" to "7",
        "eight" to "8",
        "nine" to "9",
        "zero" to "0"
    )
    var answer = ""
    var stringNumber: String = ""
    for (str in s) {
        if (str.isDigit()) answer += str
        else {
            stringNumber += str
        }
        if (dicNumber.containsKey(stringNumber)) {
            answer += dicNumber[stringNumber]
            stringNumber = ""
        }
    }
    return answer.toInt()
}

아직 코틀린이 익숙하지 않은지 저는 이렇게 푸는게 더 편하네요...

프로그래머스 IDE에서 제공하는 코드가 무슨 의미인지는 알지만, 아직은 이게 편합니다. 함수..형..

class Solution {
	fun solution(s: String): Int {
    
    }
}

이렇게 해서 main fun에서 instance 만들고 하는게 더 귀찮은거 같습니당..ㅋㅋ

다음에는 더 좋은 풀이로 찾아봽겠습니다!

profile
'개발'은 '예술'이고 '서비스'는 '작품'이다

0개의 댓글