printРабочее место участника

printЗадачи

196. Третичное множество

Ограничения: время – 1s/2s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Определим множества `K_i` рекуррентно. Пусть `K_0` = [0,1]. Разделим сегмент [0,1] на три части точками 1/3 и 2/3 и удалим из него интервал (1/3,2/3). Получим множество `K_1`, состоящее из двух оставшихся сегментов [0,1/3] и [2/3,1]. Каждый из них разделим на три части (точками 1/9 и 2/9 для первого сегмента, и точками 7/9 и 8/9 – для второго) и удалим средние интервалы (1/9,2/9) и (7/9,8/9). Таким образом получаем множество `K_2`, и т.д. Пусть мы построим множество `K_i`. Поделим каждый оставшийся сегмент из `K_i` на 3 части и удалим из этих сегментов средние интервалы. Получим, таким образом, из `K_i` множество `K_{i+1}`.
Вводятся 3 целых числа `n,\ a,\ b.` Необходимо определить, принадлежит ли точка с координатой `a/b` множеству `K_n`.
Вход содержит 3 целых числа диапазоне от 1 до 100 – `a\ b\ n`.
Вывести единственное число – 1, если принадлежит, иначе 0.

Пример ввода

2 7 1

Пример вывода

1
loading