ЗАДАЧИ
problems.ru |
О проекте
|
Об авторах
|
Справочник
Каталог по темам | по источникам | |
|
Версия для печати
Убрать все задачи
Максимальное время работы на одном тесте: 1 секунда В процессе установки турникетов в автобусах, разработчики столкнулись с проблемой проверки подлинности билета. Для ее решения был придуман следующий способ защиты от подделок. Информация, записанная на билете, кодируется K числами (0 или 1). При этом непосредственно на билете записывается последовательность из N чисел (N ³ K) так, что числа, записанные на расстоянии K, совпадают. Таким образом, для проверки подлинности билета достаточно проверить, что все числа на расстоянии K совпадают. К сожалению, при считывании информации с билета иногда могут происходить ошибки - считается, что одно из чисел может исказиться (то есть 0 заменится на 1, или 1 - на 0). Такой билет все равно нужно считать подлинным. Во всех остальных случаях билет считается поддельным. Напишите программу, которая по информации, считанной с билета, устанавливает его подлинность, и указывает, при считывании какого из чисел могла произойти ошибка. Формат входных данных В первой строке входного файла d.in записаны числа N и K (1 £ N £ 50000, 1 £ K £ 1000, K £ N). Во второй строке записано N чисел, каждое из которых является 0 или 1 - информация, считанная с билета. Формат выходных данных В первой строке выходного файла d.out должно быть записано одно из двух сообщений - OK или FAIL (первое сообщение обозначает, что билет признан подлинным, второе - поддельным). В случае, если билет подлинный, во второй строке выведите 0, если все числа были считаны правильно, или номер числа, в котором при считывании произошла ошибка. Если возможных ответов несколько, выведите любой из них (в частности, если для признания билета подлинным можно считать, что ошибок при считывании не было, а можно считать, что была ошибка в одном из чисел - правильным является любой из вариантов ответа). Примеры
Графики двух квадратных трёхчленов пересекаются в двух точках. В обеих точках касательные к графикам перпендикулярны. Точки P1, P2, ..., Pn–1 делят сторону BC равностороннего треугольника ABC на n равных частей: BP1 = P1P2 = ... = Pn–lC. Точка M выбрана на стороне AC так, что AM = BP1. а) n = 3; б) n – произвольное натуральное число. |
Страница: 1 2 >> [Всего задач: 6]
Положительные числа a, b, c таковы, что a² + b² – ab = c². Докажите, что (a – c)(b – c) ≤ 0.
В клетчатом квадрате 10×10 отмечены центры всех единичных квадратиков (всего 100 точек). Какое наименьшее число прямых, не параллельных сторонам квадрата, нужно провести, чтобы вычеркнуть все отмеченные точки?
Точки P1, P2, ..., Pn–1 делят сторону BC равностороннего треугольника ABC на n равных частей: BP1 = P1P2 = ... = Pn–lC. Точка M выбрана на стороне AC так, что AM = BP1. а) n = 3; б) n – произвольное натуральное число.
В углу шахматной доски размером m×n полей стоит ладья. Двое по очереди передвигают её по вертикали или по горизонтали на любое число полей; при этом не разрешается, чтобы ладья стала на поле или прошла через поле, на котором она уже побывала (или через которое уже проходила). Проигрывает тот, кому некуда ходить. Кто из играющих может обеспечить себе победу: начинающий или его партнер, и как ему следует играть?
В стране, дома жителей которой представляют собой точки плоскости, действуют два закона:
Страница: 1 2 >> [Всего задач: 6]
|
© 2004-...
МЦНМО
(о копирайте)
|
Пишите нам
|
![]() |
Проект осуществляется при поддержке