시간 제한
메모리 제한
시간 제한
0.1초
메모리 제한
32 MB
인쇄 회로 기판(PCB)은 부도체 기판 위에 얇게 붙인 구리 판을 깎아 만든 도선으로 전자 부품들을 기계적으로 지지하고 전기적으로 연결하는 판이다.
어느 회사가 PCB 위에 새 전자 기기를 만들려고 한다. 설계는 일부만 완성되어 있으며, 1번부터 N번까지 번호가 매겨진 N개의 노드로 이루어진 닫힌 다각형 모양이다. 모든 i에 대해 노드 i와 노드 i+1은 직선 도선으로 이어져 있고, 노드 N은 다시 노드 1과 이어져 있다. 도선들은 서로 교차하지 않는다. 즉 두 도선이 한 점을 공유한다면 그 점은 두 도선 모두의 끝점이며, 각 노드는 정확히 두 도선의 끝점이다. 각 노드의 위치는 정수 좌표 (x,y)로 주어지고, 원점 (0,0)은 기판의 왼쪽 아래 모서리로 다각형 바깥에 있다.
원점과 어떤 노드를 직선 도선으로 이었을 때 그 도선이 다각형과 오직 그 노드에서만 만나는 노드를 모두 찾는 프로그램을 작성하시오.
첫째 줄에 노드의 개수 N (1≤N≤200000)이 주어진다.
다음 N개의 줄 중 i+1번째 줄에는 노드 i의 좌표를 나타내는 두 정수 x, y (0<x,y≤1000000)가 주어진다.
첫째 줄에, 원점과 직선 도선으로 이었을 때 그 도선이 다각형과 오직 그 노드에서만 만나는 노드의 개수 M을 출력한다.
둘째 줄에, 그러한 노드들의 번호를 오름차순으로 공백 하나로 구분하여 출력한다.
