원 하나와 직선 여러 개가 주어진다. 이 직선들이 원을 몇 조각으로 나누는지 구하여라.
직선은 양쪽으로 무한히 뻗어 있다. 원과 만나지 않는 직선은 원을 나누지 않는다.
입력은 테스트 케이스 여러 개로 이루어진다. 각 테스트 케이스의 첫 줄에는 네 정수 r (1≤r≤1000), x, y (−1000≤x,y≤1000), n (0≤n≤1000)이 주어진다. r은 원의 반지름, (x,y)는 원의 중심 좌표, n은 직선의 개수이다.
이어지는 n개의 줄에는 각각 네 정수 x1, y1, x2, y2 (−1000≤x1,y1,x2,y2≤1000)가 주어진다. 이 네 수는 점 (x1,y1)과 (x2,y2)를 지나는 직선을 나타낸다. 두 점을 잇는 선분이 아니라 무한히 뻗은 직선 전체를 생각한다.
어떤 테스트 케이스에서도 원 내부의 한 점에서 만나는 직선은 두 개를 넘지 않고, 원에 접하는 직선은 없으며, 서로 일치하는 두 직선도 없다.
입력의 마지막 줄에는 0이 네 개 주어진다.
각 테스트 케이스마다 원이 나뉜 조각의 개수를 정수 하나로 한 줄에 출력한다. 공백도 빈 줄도 출력하지 않는다.