Fişierul intrare/ieşire: | caramele.in, caramele.out | Sursă | ad-hoc |
Autor | Adăugată de | ||
Timp execuţie pe test | 0.75 sec | Limită de memorie | 262144 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Caramele
El Marac şi-a petrecut vacanţa de două săptămâni la bunica lui, iar aceasta, profitând de ocazie, l-a răsfăţat cu mâncărurile lui preferate. Din păcate, toate lucrurile bune au un sfârşit. Vacanţa este pe terminate, iar bunica i-a promis lui El Marac nişte caramele. Mai exact, cum bunica are foarte multe caramele, dar nu vrea să le dea pe nemeritate, ea ii propune următorul joc: pe tabla de dame a bunicului se află N piese; Marac va primi câte o caramea pentru fiecare triunghi observat de el ce are următoarele proprietăţi:
- Vârfurile sale sunt piese de pe tablă
- Triunghiul este dreptunghic isoscel
- Catetele sale sunt paralele marginile tablei
Cum Marac vrea să mănânce cât mai multe caramele, el este interesat doar de numărul maxim de caramele pe care îl poate obţine pentru anumite configuraţii de asezări ale pieselor. Deoarece Marac încă este ocupat cu friptura bunicii, el vă roagă să îl ajutaţi în a afla acest număr maxim de caramele.
Date de intrare
Fişierul de intrare caramele.in conţine, pe prima linie, N, numărul de piese de pe tablă.
Următoarele N linii conţin coordonatele pieselor.
Date de ieşire
În fişierul de ieşire caramele.out afişaţi numărul triunghiurilor speciale cerute, pe o singura linie.
Restricţii
- 1 ≤ N ≤ 30 000
- Coordonatele pieselor sunt numere întregi mai mici în modul decât 30 000
- Nu vor exista două piese cu coordonate egale.
Subtask-uri
Indice | Punctaj | Restricţii |
---|---|---|
1 | 5 puncte | N ≤ 100 |
2 | 30 puncte | N ≤ 1 000 |
3 | 65 puncte | N ≤ 30 000 |
Exemplu
caramele.in | caramele.out |
---|---|
7 1 1 1 2 2 1 2 2 2 3 3 2 3 3 | 10 |