pante

Time limit: 0.3s Memory limit: 16MB Input: pante.in Output: pante.out

După o înfrângere cruntă, Zăhărel a renunţat să mai joace StarCraft şi a decis să mai rezolve o problemă de informatică. Astfel, el are NN puncte în plan, de coordonate numere naturale. El primeşte patru numere naturale AA, BB, CC şi DD, şi ştie că panta dreptei care trece prin două puncte ii şi jj se defineşte astfel:
m(i,j)=yiyjxixjm(i,j) = \frac{y_i - y_j}{x_i - x_j} . El doreşte să afle numărul de perechi de puncte i j(1i<jN)i \ j (1 \leq i < j \leq N) cu proprietatea că ABm(i,j)CD\frac{A}{B} \leq m(i,j) \leq \frac{C}{D}.

Cerinţă

Fiind date NN puncte în plan, să se afle câte perechi de puncte i j(1i<jN)i \ j (1 \leq i < j \leq N) au proprietatea că ABm(i,j)CD\frac{A}{B} \leq m(i,j) \leq \frac{C}{D}.

Date de intrare

Fişierul de intrare pante.in conţine pe prima linie numărul natural NN. Pe cea de a doua linie se află numerele naturale A B C DA \ B \ C \ D separate prin câte un singur spaţiu. Pe fiecare dintre următoarele NN linii se găsesc coordonatele x yx \ y ale fiecărui punct.

Date de ieșire

Fişierul de ieşire pante.out va conţine o singură linie pe care este scris numărul de perechi cu proprietatea cerută.

Restricții și precizări

  • 1N200 0001 \leq N \leq 200 \ 000
  • 0xi,yi2 000 000 0000 \leq x_i, y_i \leq 2 \ 000 \ 000 \ 000
  • 0<A,B,C,D2 000 000 0000 < A, B, C, D \leq 2 \ 000 \ 000 \ 000
  • Pentru 10%10\% dintre teste 1N7001 \leq N \leq 700
  • Oricare două puncte au abscisa diferită

Exemplu

pante.in

3
1 2 1 1
0 0
1 1
2 0

pante.out

1

Explicație

Perechea de puncte (1,2)(1, 2) are proprietatea cerută. Perechea (2,3)(2, 3) are panta 1-1, iar perechea (1,3)(1, 3) are panta 00.

Log in or sign up to be able to send submissions!