Задачи
Платные дороги
Платные дороги
Мэр одного большого города решил ввести оплату за проезд по шоссе, проходящим в районе города, чтобы снизить объём транзитного транспорта. В районе города проходит \textbf{n} шоссе.
Но руководство области, в которой расположен город, воспротивилось планам мэра. Действительно - дальнобойщики представляют собой неплохой источник доходов для большого количества кафе и гостиниц в небольших городах.
В результате решили, что плата будет произведена только на шоссе, которые \textit{проходят через город}.
В городе используется развитая система метрополитена, всего в городе есть \textbf{m} станций метро. Было решено, что шоссе проходит через город, если либо одна из станций метро расположена непосредственно на шоссе, либо есть хотя бы одна станция с каждой стороны от шоссе.
Помогите теперь мэру определить, какие шоссе проходят через город.
\InputFile
Первая строка входного файла содержит два целых числа: \textbf{n} и \textbf{m} - количество шоссе и количество станций метро, соответственно (\textbf{1} ≤ \textbf{n}, \textbf{m} ≤ \textbf{100000}).
Следующие \textbf{n} строк описывают шоссе. Каждое шоссе описывается тремя целыми числами \textbf{a}, \textbf{b} и \textbf{c} и представляет собой прямую на плоскости, задаваемую уравнением \textbf{ax+by+c=0} (|\textbf{a}|, |\textbf{b}|, |\textbf{c}| ≤ \textbf{10^6}).
Следующие \textbf{m} строк входного файла описывают станции метро. Каждая станция описывается двумя целыми числами \textbf{x} и \textbf{y} и представляет собой точку на плоскости с координатами (\textbf{x}, \textbf{y}) (|\textbf{x}|, |\textbf{y}| ≤ \textbf{10^6}).
\OutputFile
Первая строка выходного файла должна содержать одно целое число - количество шоссе, которые проходят через город. Вторая строка должна содержать номера этих шоссе в возрастающем порядке. Шоссе нумеруются от \textbf{1} до \textbf{n} в порядке, в котором они описаны во входном файле.
Входные данные #1
4 2 0 1 0 1 0 1 1 1 0 1 1 -1 0 0 2 0
Выходные данные #1
3 1 3 4