Responsive image
Meniu
Toate soluțiile
Soluţii trimise de tine
Compilator online
Ajutor

Poligon

Adăugată de :
sorynsoo
Sursă :
ONI2011
Autor :
-
Grupă :
Mică
Punctaj :
0 pc

Restricţii

Citire / Scriere :
stdin, stdout
Limită timp :
100 ms
Limită memorie :
2048 kbytes

Poligonul de tragere este un teren special amenajat în cadrul căruia se fac exerciţii şi se execută trageri cu arme de foc. Comandantul plasează câte o ţintă în toate punctele aflate la distanţele Ri1 ≤ i ≤ n faţă de punctul de tragere (origine) şi care au coordonatele carteziene numai numere naturale nenule.
Specialiştii în armament români au creat recent o nouă armă sub forma unui tun laser care îşi lansează razele pe o traiectorie rectilinie şi are capacitatea de a distruge toate ţintele aflate pe direcţia de tragere. 

Cerinţă

Ştiind că tunul laser se găseşte în originea sistemului de coordonate, să se scrie un program care să determine: numărul de ţinte, numărul minim de lovituri de tun laser necesare pentru a distruge toate ţintele precum şi numărul de ţinte doborâte la fiecare lovitură. Spre exemplu, dacă avem n=6 distanţe (5, 7, 10, 13, 15, 17) pentru care se încearcă plasarea ţintelor, atunci în poligon se vor plasa 10 ţinte, va fi nevoie de 6 lovituri pentru a doborî toate ţintele iar la fiecare lovitură se vor doborî respectiv 1, 1, 3, 3, 1, 1 ţinte.

 

Date de intrare

Fişierul de intrare conţine pe prima linie numărul n de distanţe la care vor fi plasate ţinte, iar pe a doua linie n numere naturale nenule distincte separate printr-un spaţiu, ce reprezintă aceste distanţe.

 

Date de ieşire

Fişierul de ieşire va conţine 3 linii. Pe prima linie se va scrie numărul ţintelor plasate în poligon. Pe a doua linie se va scrie numărul minim de lovituri de tun laser cu care se pot doborî toate ţintele, iar pe a treia linie se va scrie numărul de ţinte doborâte la fiecare lovitură, separate printr-un spaţiu, în ordinea crescătoare a unghiurilor direcţiilor cu axa OX.

 

Restricţii

1 ≤ n ≤ 1000
1 ≤ Ri ≤ 1000
• Pentru fiecare set de date de intrare, în poligon va exista cel puţin o ţintă.

 

Exemple

Date de intrare

 Date de iesire

Explicaţii
6 5 10 15 7 13 17 10 6 1 1 3 3 1 1 Avem 6 distanţe: 5,10,15,7,13,17.
În poligon vor fi plasate 10 ţinte (punctele negre marcate pe figură) care pot fi doborâte din 6 lovituri iar la fiecare lovitură se vor doborî câte 1,1,3,3,1,1 ţinte.

Trimite o solutie

Format: cpp şi c

Selectează runda

Trebuie să fii logat pentru a trimite surse


Indicații rezolvare

Nu există indicații de rezolvare



Comentarii

Adauga un comentariu: Click !