소 자수

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

베시는 정교한 소 자수 기법에 빠졌습니다. 소들은 반지름이 정수 $d$ ($1 \le d \le 50{,}000$)인 원형 수틀에 고정된 천에 수를 놓습니다. 소들은 실 $N$개 ($2 \le N \le 50{,}000$)를 놓는데, 각 실은 수틀 가장자리의 한 점에서 다른 한 점까지 곧게 이어진 직선입니다. 어떤 두 실의 끝점도 수틀 가장자리에서 같은 위치를 공유하지 않습니다.

수학을 좋아하는 베시는 각 실을 $ax + by + c = 0$ 형태의 직선 방정식으로 나타냅니다. 계수 $a$, $b$, $c$는 정수이며 $-1{,}000{,}000 \le a, b, c \le 1{,}000{,}000$을 만족하고, 모든 실에 대해 $a$와 $b$ 중 적어도 하나는 0이 아닙니다. 완전히 똑같은 직선을 나타내는 두 실은 존재하지 않습니다.

아쉽게도 베시의 방정식 목록에는 실제로는 수틀 원의 내부를 지나지 않는 직선도 일부 포함되어 있습니다. 이러한 직선은 무시하면 됩니다.

원점 $(0,0)$은 수틀의 정확한 중심이므로, 수틀 가장자리의 모든 점은 원점으로부터 거리가 $d$입니다. 소 자수는 실이 더 많이 교차할수록 더 높이 평가됩니다. 천 위에서, 즉 원점으로부터 거리가 $d$ 이내인 점에서 교차하는 실 쌍의 개수를 세어 주세요. 만약 세 실이 모두 같은 점을 지난다면 이는 교차하는 쌍 3개로 셉니다. 네 실이 한 점을 지나면 6개의 쌍이 되는 식입니다.

입력

  • 첫째 줄: 두 정수 $N$과 $d$가 공백으로 구분되어 주어집니다.
  • 둘째 줄부터 $N+1$째 줄까지: $i+1$째 줄에는 실 $i$를 나타내는 세 정수 $a$, $b$, $c$가 주어집니다.

출력

  • 원점으로부터 거리가 $d$ 이내에서 교차하는 실 쌍의 개수를 정수 하나로 출력합니다.

힌트

예를 들어 $d = 1$일 때 $x = 0$ (직선 $1,x + 0,y + 0 = 0$)과 $y = 0$ (직선 $0,x + 1,y + 0 = 0$)인 두 실을 생각해 봅시다. 두 실은 원점 $(0,0)$에서 만나며, 그 점의 중심으로부터의 거리는 $0 \le 1 = d$이므로 이 쌍은 한 번 세어집니다.