-
[백준] 2753번: 윤년 - 코틀린(Kotlin)알고리즘/백준 2022. 10. 31. 00:01
https://www.acmicpc.net/problem/2753
문제 해석
문제에 나온 절차대로 윤년을 판별하면 되는 문제입니다.
- 4의 배수이면서 100의 배수가 아니여야 함
- 400의 배수이면 됨
막상 구현할 때는 400의 배수는 4의 배수이면서 100의 배수이기 때문에 400의 배수를 먼저 판별해야 했던 문제였습니다.
코드
fun main() { val input = readLine()!!.toInt() println(isLeapYear(input)) } fun isLeapYear(year: Int) = when { (year % 400) == 0 -> LEAP_YEAR (year % 4) == 0 && (year % 100) != 0 -> LEAP_YEAR else -> YEAR } const val LEAP_YEAR = 1 const val YEAR = 0
다른 분들의 코드에서 배운 점
fun main() { val input = readLine()!!.toInt() println(isLeapYear(input)) } fun isLeapYear(year: Int) = when { (year % 400) == 0 -> LEAP_YEAR (year % 100) != 0 -> YEAR (year % 4) == 0 -> LEAP_YEAR else -> YEAR } const val LEAP_YEAR = 1 const val YEAR = 0
이런 방식으로 쪼개서 구현하여 가독성을 높이는 방법도 있습니다.
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 1546번 : 평균 - 코틀린(kotlin) (0) 2022.11.02 [백준] 2577번 : 숫자의 개수 - 코틀린(Kotlin) (0) 2022.11.01 [백준] 2884번 : 알람 시계 - 코틀린(kotlin) (0) 2022.10.30 [백준] 2908번 : 상수 - 코틀린(kotlin) (0) 2022.10.29 [백준] 1152 : 단어의 개수 - 코틀린(Kotlin) (0) 2022.10.27