Загрузка [MathJax]/jax/output/HTML-CSS/fonts/TeX/fontdata.js
 

print1588. Марсианский монитор

printМарсианский монитор

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

Марсианский институт разработал новую модель черно-белого компьютерного монитора с разрешением W пикселей по горизонтали и H пикселей по вертикали.
Новый монитор очень дёшев в производстве, но имеет один конструктивный недостаток – если какой-либо из пикселей стал белым, то все пиксели, находящиеся на расстоянии, меньшем или равном L, белыми стать уже не могут. (Расстояние между пикселями c координатами (x1,  и (x_2,\ y_2) считается по обычной формуле – sqrt{(x_1\ -\ x_2)^2\ +\ (y_1\ -\ y_2)^2}).
На монитор, первоначально полностью чёрный, последовательно выводится N белых пикселей. Определите, какие из этих пикселей фактически станут белыми.
Входной файла целые числа N\ W\ H\ L (1\ ≤\ N\ ≤\ 5*10^4, 1\ ≤\ W\ ≤\ 2560, 1\ ≤\ H\ ≤\ 2048, 0\ ≤\ L\ ≤\ 25). Далее идут N пар целых чисел X_i\ Y_i (1\ ≤\ X_i\ ≤\ W, 1\ ≤\ Y_i\ ≤\ H)- координаты i-го выводимого пикселя.
Выходной файл должен содержать целое число M – количество отображённых пикселей. Далее должны идти M целых чисел a_j – порядковые номера отображённых пикселей, в возрастающем порядке. Пиксели нумеруются с единицы.

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

3 10 10 2
1 1  1 3  3 2

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

2
1 3

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

8 13 9 3
1 1  2 1  3 3  3 6  7 3  6 3  7 7  7 6

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

4
1 4 5 7
Источник: http://imcs.dvgu.ru/cats/ Весенний турнир, 2011
loading