Я не удержался и сходу решил несколько самых лёгких задач, чтобы опробовать возможности системы:
Судя по всему мне придётся привыкать, что всякие проверки - от лукавого. Для олимпиадного програмирования не нужно проверять входные данные, что позволяет писать код короче:
fun main() { val index = readLine()!!.split(' ').map { it.toInt() }[1] - 1 val list = readLine()!!.split(' ').map { it.toInt() } val min = list[index].coerceAtLeast(1) println(list.filter { it >= min }.count()) }Это пример решения задачи Следующий раунд. Как можно заметить, я игнорирую нулевой результат
readLine()
, а из первого массива беру только второе число, так как первое понадобилось бы только для проверки длины второго массива. Не уверен, нужно ли задавать нижнее значение min
как 1
, но решение приняли:
Круто!
ОтветитьУдалитьПослезавтра будет двухчасовой контест (в 17:35 начало, регистрация до 17:30).
Миша может получить опыт ;)
Устраивать контесты в рабочие дни - то ещё решение. Ему ещё уроки на субботу делать. И репитиция оркестра в 6 вечера...
УдалитьНу, там контесты не привязаны к дням недели. Вот, например, во dторник будет контест div3 (самый простой уровень), а в субботу, 19, тоже будет контест (div2 - тоже несложный, возможно, я поучаствую).
Удалитьhttps://codeforces.com/calendar
Спасибо. Попробуем
УдалитьKotlin - это нечто! Решение этой задачи в одну строку:
ОтветитьУдалитьfun main() = println(readLine()!!
.split(' ')
.map { it.toInt() }
.reduce { x, y -> x * y / 2 })
Как профессионального программиста меня убивает такой код, но тут прокатывает...