PS/LeetCode

[Kotlin] LeetCode 009 : Palindrome Number

뱃싸공 2022. 11. 27. 15:51
 

Palindrome Number - LeetCode

Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.

leetcode.com

입력된 숫자가 펠린드롬 숫자인지 확인하는 문제입니다.
우선 음의 정수는 무조건 펠린드롬 수가 될 수 없고, 이를 판별하기 좋은 방법은 문자열로 변환한 후, 대응되는지 확인해보는 방법이 있습니다.

정수를 문자열로 변환한뒤, i와 len-i가 대응되는지 확인하여 모두 대칭되면 true를, 아니라면 false를 반환하면 됩니다.

class Solution {
    fun isPalindrome(x: Int): Boolean {
        var flag : Boolean = true
        val y : String = x.toString()
        val len : Int = y.length-1

        for(i in 0..len/2) {
            if(isZero(len-i) || isEqual(y[i], y[len-i])) continue
            flag = false
        }
        return flag
    }

    fun isEqual(a : Char, b : Char) : Boolean {
        return a == b
    }

    fun isZero(x : Int) : Boolean{
        return x < 0
    }
}