Lista de probleme 12

Etichete

În vecinătatea lui Moș Crăciun se află o fâșie liniară formată din N zone identice de gheață. Pe această fâșie trăiesc mai mulți pinguini. Din cauza încălzirii globale zonele de gheața pe care nu se aflau pinguini s-au topit și au rămas mai multe grupuri de pinguini izolate. Moș Crăciun dorește să salveze pinguinii, dar mai întâi trebuie sa afle răspunsul la câteva întrebări.

Cunoscând N, numărul zonelor din fâșia liniară și fiecare tip de zonă: apa (1), pinguin (2) să se determine:
1) Câți pinguini trebuie să salveze Moș Crăciun;
2) Câte grupuri izolate de pinguini sunt;
3) Care este numărul maxim de pinguini care se află în același grup.

Olimpiada Municipala de Informatica, Iasi, 2018

#2358 castig

Ana şi Bogdan au participat la un concurs şi au obţinut premiul I, respectiv premiul al II-lea. La concurs există n premii, numerotate de la 1 la n, în ordinea în care sunt aşezate pe masă. Regulamentul concursului prevede că fiecare câştigător trebuie să aleagă exact k premii aşezate pe poziţii consecutive. Fiindcă Ana are premiul I, ea poate să îşi aleagă prima premiile. Apoi Bogdan va alege şi el k premii aşezate pe poziţii consecutive dintre cele rămase după ce a ales Ana. Ana este foarte supărată pe Bogdan, aşa că ea urmăreşte ca Bogdan să câştige cât mai puţin, fără să o intereseze prea mult ce premii alege ea.

Scrieţi un program care, cunoscând n, k şi valorile celor n premii, determină cel mai mic număr valmin, astfel încât Bogdan să nu poate selecta k premii aşezate pe poziţii consecutive cu o valoare totală mai mare decât valmin.

Olimpiada Municipala de Informatica, Iasi, 2018

#2353 padure

Într-o pădure există plantați copaci pe N linii și M coloane. Copacii au diferite înălțimi. O zonă dreptunghiulară de copaci din cadrul pădurii trebuie tăiată. Pădurarul trebuie să aleagă dintre C zone, o zonă în care suma înălțimilor copacilor este maximă. Deoarece pădurarului îi plac numerele prime, el va alege o zonă în care suma înălțimilor copacilor este și un număr prim.
Determinați suma din enunț pentru zonele puse la dispoziție.

Olimpiada Municipala de Informatica, Iasi, 2018

#2359 cifre13

Pe o foaie de matematică cu N x M pătrăţele, Maria desenează C cifre. Fiecare cifră este desenată într-o zonă formată din 7 x 4 pătrăţele albe şi negre denumite pixeli, aşa cum este ilustrat mai jos :

Fiecare pixel ocupă exact un pătrăţel pe foaia de matematică. Evident, pe foaie Maria va desena doar pixelii negri. Determinaţi numărul de pătrăţele negre de pe foaia de matematică după ce au fost desenate cele C cifre.

Olimpiada Municipala de Informatica, Iasi, 2018

#2350 grup

Ionel este pasionat de problemele cu șiruri de numere naturale. Pornind de la un șir dat, el numește grup un subșir de numere care se formează după criterii precizate. De aceasta dată, el alege două criterii:
Criteriul 1: grupează numerele după prima lor cifră. De exemplu, numerele 231 și 2745 aparțin aceluiași grup deoarece ambele încep cu aceeași cifră (2).
Criteriul 2: pune în același grup toate numerele care au în componența lor aceleași cifre, indiferent de numărul de apariții a fiecărei cifre. De exemplu, numerele 234372 și 3224727 vor fi plasate în același grup deoarece în componența ambelor intră cifrele 2, 3, 4 si 7, și numai acestea.

Scrieţi un program care, pentru un şir dat de n numere naturale, rezolvă următoarele cerințe:

  1. determină numărul minim dintre numerele aparținând celui mai numeros grup care se formează conform Criteriului 1. Dacă sunt mai multe grupuri cu număr maxim de elemente, se va determina numărul minim din grupul pentru care prima cifra este cea mai mică.
  2. determină numărul de elemente ale celui mai numeros grup care se formează conform Criteriului 2.

Olimpiada Municipala de Informatica, Iasi, 2018

#2357 escape

Pentru că toți elevii clasei a VI-a s-au hotărât să meargă la EscapeRoom, diriginta a repartizat fiecărui elev un număr. Fiind mulți elevi, ei vor intra în două serii astfel: dacă numărul primit este prim, atunci elevul intră în seria 1, altfel elevul intră în seria 2. Numărul camerei în care intră elevul este cifra de control obținută din numărul primit de fiecare elev în parte (cifra de control a unui număr se obține efectuând suma cifrelor sale, apoi suma cifrelor acestei sume și așa mai departe, până când se obține un număr formată dintr-o singură cifră). În funcție de timpul de evadare, elevul are un punctaj reprezentat de un număr cu exact două cifre. La numărul primit, elevul lipește punctajul obținut și formează un cod pe care la sfârșitul activității îl transmite doamnei diriginte.
Exemplu: elevul primește numărul 191; numărul este prim, deci elevul va intra în seria 1, iar numărul camerei este 2 (1 + 9 + 1 = 11, 1 + 1 = 2 ); punctajul obținut de elev este 60, deci codul elevului este 19160.
Fiind dat numărul natural n, reprezentând numărul de elevi și cele n coduri primite de doamna dirigintă, să se determine:
(1) Punctajul maxim obținut de o cameră în prima serie și punctajul maxim obținut de o cameră în a doua serie (punctajul camerei este egal cu suma punctajelor elevilor care au fost în camera respectivă în aceeași serie).
(2) Indicii camerelor vizitate, în ordinea descrescătoare a numărului de elevi care le-au vizitat, din ambele serii, la un loc.

Un grup de copii participă la un Bal Mascat. Participanții nu pot să-și aleagă singuri costumul. Organizatorii au pregătit exact atâtea costume câți copii sunt. Au ambalat costumele în cutii numerotate și le-au așezat într-o cameră. Copiii intră în camera cu costume și își aleg câte o cutie (la întâmplare). Fiind puși pe glume, organizatorii au scos încălțămintea din anumite cutii, după regula: cutia cu numărul p ramâne fără încălțări, apoi cutia cu numărul 2*p, apoi cutia cu numărul 3*p și așa mai departe până la terminarea cutiilor. Dacă ultima cutie a rămas cu tot costumul, atunci organizatorii scot încălțămintea și din ea. După ce primesc cutiile cu costume, copiii constată că nu se pot deschide decât cu ajutorul unui cod (același la toate cutiile). Organizatorii le dau indicii despre cum să afle codul: se calculează numărul de cutii care au rămas fără încălțăminte, se află ultima cifră din acest număr (notată cu c). Apoi se formează un cod intermediar cu exact 2*p cifre, astfel: dacă c are o valoare diferită de 9, atunci prima cifră (pornind de la stânga numărului) are valoarea (c+1). Dacă c are valoarea 9 atunci prima cifră este (c-1). A doua cifră are valoarea c. A treia cifră este egală cu prima, cifra a patra urmând să fie egală cu a doua și tot așa până se află toate cele 2*p cifre. La final, se taie ultima cifră și ajungem la codul corect cu care se deschid cutiile.
Scrieţi un program care să îi ajute pe copii să afle codul cu care se deschid cutiile.

Olimpiada Municipala de Informatica, Iasi, 2018

#2363 joc8

Elena și Maria au primit cadou un joc. Dintr-o cutie ce conține mai multe numere, fiecare extrage pe rand câte un număr și trebuie să descopere anumite condiții îndeplinite de aceste numere. Ele vor să determine câte numere alternante au fost extrase. Un număr este alternant dacă are număr impar de cifre și dacă orice cifră a numărului, cu excepția primei și a ultimei cifre se învecinează fie cu două cifre mai mari decât ea, fie cu două cifre mai mici decât ea. Cunoscând numărul n de numere, precum şi cele n numere naturale extrase din cutie determinați câte dintre acestea au fost alternante.

Olimpiada Municipala de Informatica, Iasi, 2018

Se numește număr 3-prim, un număr natural care se poate descompune în produs de cel mult 3 numere prime, nu neapărat distincte. Cunoscând numerele naturale n și k, construiți un șir format din primele n numere 3-prime. Ordinea numerelor în șir va fi stabilită astfel încât, extrăgând pe rând numerele din șir, începând cu primul număr și apoi câte un număr din k în k poziții, circular, să obținem în ordine crescătoare, șirul primelor n numere 3-prime. Parcurgerea circulară înseamnă că după elementul aflat în vector pe locul n, urmează elementul de pe locul 1.

Cunoscând numerele n, k și c (c = 1 sau c = 2), se cere:
1. dacă c = 1, să se afișeze cel mai mare din cele n numere 3-prime.
2. dacă c = 2, să se construiască șirul de n numere care îndeplinește condiția din enunț.

Olimpiada Municipala de Informatica, Iasi, 2018

#2352 careu

Gigel a inventat un nou joc, de această dată utilizând un rebus sub forma de tablă pătratică cu n x n căsuțe. Fiecare căsuță conține câte o literă mare din alfabetul englez sau caracterul '.'. Literele formează pe orizontală sau pe verticală cuvinte delimitate prin caractere punct sau prin marginile tablei. Cel care joacă trebuie să determine cuvintele speciale din careu. Punctajul unui cuvânt se calculează ca suma codurilor ASCII ale literelor distincte care apar în acel cuvânt. Punctajul total al jocului se calculează însumând punctajele literelor distincte ale cuvintelor speciale distincte. Un cuvânt special îndeplinește simultan condițiile:

  • este palindrom
  • are lungime maximă relativ la alte cuvinte palindrom

Să se scrie un program care sa determine, pentru un careu dat, punctajul maxim și cuvintele care permit obținerea punctajului maxim. Dacă nu există astfel de cuvinte se va afișa valoarea 0.

Olimpiada Municipala de Informatica, Iasi, 2018