Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- fun main(args: Array<String>) {
- val dates: Array<String> = arrayOf(
- "20.1-18.2",
- "19.2-20.3",
- "21.3-19.4"
- )
- val D = readLine()
- val M = readLine()
- val dateName = getDateName(D, M, dates)
- println(dateName)
- }
- fun getDateName(d: String?, m: String?, dates: Array<String>): String {
- var index: Int = -1
- for (date in dates) {
- val beginEnd = date.split("-")
- val dayBegin = beginEnd[0].split(".")[0]
- val monthBegin = beginEnd[0].split(".")[1]
- val dayEnd = beginEnd[1].split(".")[0]
- val monthEnd = beginEnd[1].split(".")[1]
- val isDayBeginBigger = dayBegin > dayEnd
- val isMonthDifferent = monthBegin != monthEnd
- if (m?.toInt()!! >= monthBegin.toInt() && m.toInt() <= monthEnd.toInt()) {
- if (!isMonthDifferent) {
- if (d?.toInt()!! >= dayBegin.toInt() && d.toInt() <= dayEnd.toInt()) {
- index = dates.indexOf(date)
- break
- }
- } else {
- if (isDayBeginBigger) {
- if (m.toInt() == monthBegin.toInt() && d?.toInt()!! >= dayBegin.toInt() && d.toInt() <= 31
- || m.toInt() <= monthEnd.toInt() && d?.toInt()!! >= 1 && d.toInt() <= dayEnd.toInt()) {
- index = dates.indexOf(date)
- break
- }
- } else {
- if (m.toInt() == monthBegin.toInt() && d?.toInt()!! >= dayBegin.toInt() && d.toInt() <= 31
- || m.toInt() <= monthEnd.toInt() && d?.toInt()!! >= 1 && d.toInt() <= dayEnd.toInt()) {
- index = dates.indexOf(date)
- break
- }
- }
- }
- }
- }
- return findName(index)
- }
- fun findName(index: Int): String {
- return when (index) {
- 0 -> "Qovg'a"
- 1 -> "Baliq"
- 2 -> "Qo'y"
- else -> "Date name not found"
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement