Revizia anterioară Revizia următoare
Fişierul intrare/ieşire: | echilateral.in, echilateral.out | Sursă | Lot Focsani 2016, Baraj 1 Seniori |
Autor | Adrian Panaete | Adăugată de | |
Timp execuţie pe test | 0.35 sec | Limită de memorie | 65536 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Echilateral
O reţea triunghiulară de latură n se obţine descompunând un triunghi echilateral de latură n în triunghiuri echilaterale de latură 1, folosind drepte paralele la laturile triunghiului iniţial. Numim noduri ale reţelei vârfurile triunghiurilor de latură 1 folosite în descompunere.
Cerinta
Să se scrie un program care pentru n, a, şi b cunoscute, determină numărul de triunghiuri echilaterale cu vârfurile în nodurile unei reţele de latură n care au lungimile laturilor cuprinse între valorile a şi b.
Date de intrare
Fişierul de intrare echilateral.in conţine pe prima linie numerele n, a şi b separate prin câte un spaţiu.
Date de ieşire
Fişierul de ieşire echilateral.out va conţine pe prima linie numărul de triunghiuri echilaterale cu vârfurile în nodurile unei reţele de latură n care au lungimile laturilor cuprinse între valorile a şi b, modulo 666013.
Restricţii
- 1 ≤ n ≤ 1.000.000.000
- 1 ≤ a ≤ b ≤ 1.000.000
Exemplu
echilateral.in | echilateral.out | Explicatie |
---|---|---|
4 1 2 | 29 | Avem 16 triunghiuri de latură 1 (cele care acoperă reţeaua). Mai avem încă 6 triunghiuri de latură sqrt(3) (similar triunghiului din a doua figură şi având una dintre laturi verticală). Mai avem încă 7 triunghiuri de latură 2. În total avem 16+6+7=29 triunghiuri. |