Lista de probleme 2

Etichete

#3385 lumini1

Nicoleta, o fată curioasă, dorește să afle cine dintre colegii de clasă are bradul cu cele mai multe luminițe, cât și numărul de luminițe din acest brad. Fiind olimpică la informatică și iubind provocările, colegii i-au comunicat prin SMS doar numărul de divizori corespunzător numărului de luminițe din brad, acesta fiind și cel mai mic număr cu această proprietate. De exemplu, George, colegul de bancă, i-a dat numărul 5, corespunzător unui număr de 16 luminițe, mai exact D16 = {1, 2, 4, 8, 16}, iar 16 este numărul cel mai mic cu exact 5 divizori. Mesajele colegilor vor fi de forma: NrDiv Nume, unde NrDiv reprezintă numărul de divizori, iar Nume reprezintă numele colegului care a trimis mesajul. Scrieţi un program care să determine:
1) Numărul de luminițe din bradul cu cele mai multe luminițe.
2) Numele colegului care are bradul cu cele mai multe luminițe.

Am o prietenă educatoare. Anul acesta are grupa mică și trebuie să organizeze serbarea de Crăciun. Ea s-a gândit să așeze copiii sub forma unui brad (cam așa ∆). Va împărți copiii în trei categorii: prima categorie va fi formată din primii X cei mai scunzi copii, a doua categorie este formată din copiii cu înălțimea maximă și restul Y de copii în a treia categorie. Copiii din prima categorie vor fi așezați în ordinea crescătoare a înălțimilor, iar cei din a treia categorie în ordinea descrescătoare a înălțimilor. Prietena mea vrea ca toți copiii cu aceeași înălțime să stea unul lângă altul, iar dacă numărul de copii din prima categorie nu poate fi egal cu cel din a treia, vrea ca prima categorie să fie mai numeroasă (X ≥ Y). Prietena mea știe N, numărul de elevi din grupă, prenumele copiilor și înălțimea lor în centimetri. Ea încearcă de câteva zile să îi așeze. Oare cum ar rezolva un elev olimpic la informatică această problemă? Scrieţi un program care să determine:
1. Numărul maxim de copii cu aceeași înălțime.
2. O posibilă distribuire a înălțimilor sub forma unui brad.
3. Lista cu prenumele copiilor conform distribuirii înălțimilor determinată anterior.

Olimpiada Municipala de Informatica, Iasi, 2020