fun isLeapYear(year: Int): Boolean {
return (year % 4 == 0) && ((year % 100 != 0) || (year % 400 == 0))
}
fun getDayOfYear(year: Int, month: Int, day: Int): Int {
// cumulative days at the end of each month (non-leap year)
val days = arrayOf(0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334)
return if (isLeapYear(year) && month > 2) {
days[month - 1] + day + 1
} else {
days[month - 1] + day
}
}
fun main() {
val dayOfYear = getDayOfYear(2023, 5, 15)
println(dayOfYear)
}
/*
run:
135
*/