eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Платные дороги

Платные дороги

Мэр одного большого города решил ввести оплату за проезд по шоссе, проходящим в районе города, чтобы снизить объём транзитного транспорта. В районе города проходит \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} в порядке, в котором они описаны во входном файле.
Лимит времени 2 секунды
Лимит использования памяти 256 MiB
Входные данные #1
4 2
0 1 0
1 0 1
1 1 0
1 1 -1
0 0
2 0
Выходные данные #1
3
1 3 4