문제

Using ranges implement a function that checks whether the date is in the range between the first date and the last date (inclusive).

You can build a range of any comparable elements. In Kotlin in checks are translated to the corresponding contains calls and .. to rangeTo calls:

val list = listOf("a", "b")
"a" in list  // list.contains("a")
"a" !in list // !list.contains("a")

date1..date2 // date1.rangeTo(date2)
fun checkInRange(date: MyDate, first: MyDate, last: MyDate): Boolean {
    return TODO()
}

fun checkInRange(date: MyDate, first: MyDate, last: MyDate): Boolean {
    return date in first..last
}

풀이

특정 날짜가 주어진 날짜 범위 안에 있는지 확인하는 함수를 구현하는 문제이다.

범위 in 연산자를 사용하여 구현이 가능하다.

...연산자

  • a..ba.rangeTo(b)로 변환된다.
    • rangeTo 함수는 범위를 생성하는 데 사용되며, 범위 끝 값까지 포함한다.

in 연산자

  • x in a..ba <= x && x <= b로 변환된다.
  • x !in a..bx < a || x > b로 변환된다.

date in first..last 표현식을 사용하여 datefirstlast 사이에 있는지 검사할 수 있다.

profile
개발하는 다람쥐

0개의 댓글