Lista de probleme 37

Filtrare

Daruri

#2566

Moș Crăciun care-i darnic și e bun, văzând că ministerul de resort nu se grăbește să doteze școlile cu tablete și laptop-uri, ia decizia să doteze un număr cât mai mare de școli cu aceste unelte atât de necesare elevilor. El are la dispoziție un număr t de tablete și un număr l de laptopuri. Cum moșul nu vrea să nedreptățească nici o școală, el se gândește să pună în toate pachetele pe care le face același număr de tablete și același număr de laptop-uri.

Scrieți un program care determină numărul maxim de școli ce vor primi pachete, precum și câte tablete și laptop-uri se găsesc în fiecare pachet.

abk1k2

#3676

Se dau patru numere naturale a, b, k1, k2. Determinați numărul de submulțimi formate din două elemente
numere naturale x și y, cu x și y cuprinse între a și b, astfel încât cel mai mare divizor comun al lui x și y să fie multiplu de k1 sau multiplu de k2.

După consolidarea structurii de rezistență, a venit vremea refacerii zidului cetății. Acesta avea lungimea de L unități și înălțimea de H unități. El deteriorându-se în timp, acum nu mai este dreptunghiular ci, pe fiecare din cele L unități de lungime mai există Vi) unități, de material, așezate una peste alta și sprijinite pe fundație, deci până la înălțimea Vi) unități. Se dorește, evident, acoperirea zonelor rămase așa încât zidul să ajungă dreptunghiular, cu înălțimea de H unități pe fiecare din cele L unități de lungime.

Se dispune de bucăți de material, dreptunghiulare, cu o dimensiune de o unitate. Așadar putem spune că bucățile sunt de dimensiuni 1 X B(1 ≤ B ≤ L) și pentru fiecare valoare B dispunem de oricâte bucăți(să le numim de tipul B). Pentru ca zidul să fie stabil, bucățile trebuie să fie dispuse orizontal, adică una de dimensiune 1 X B va ocupa B unități pe lungime și o unitate pe înălțime. Se mai cunoaște că bucățile de același tip B au aceeași culoare și diferită de culoarea bucăților de alte tipuri. Pentru a fi zidul frumos, trebuie ca la aceeași înălțime față de fundație, să se folosească bucăți de material de aceeași culoare. Determinați numărul minim de bucăți necesare refacerii zidului.

Concursul Național Info Pro, Etapa II

DivImpar C++

#2830

Subprogramul DivImpar are doi parametri, a și b, prin care primește două numere naturale din intervalul [1,105]. Subprogramul returnează cel mai mare divizor comun impar al numerelor a și b.

Scrieți definiția completă a subprogramului.

Pentru că ești iubitor de matematică ai organizat o petrecere unde inviți N numere naturale nenule. Ce coincidență, numere s-au așezat într-un vector iar acum trebuie să vezi pentru fiecare număr câte secvențe (elemente adiacente) îl conțin pe respectivul element și au cmmmdc-ul mai mare ca 1.

GCD2

#3822

Se dă un vector A de N elemente. Trebuie să calculați suma celui mai mare divizor comun din toate secvențele vectorului . Mai formal , notând cu F(st , dr) = cmmdc(A[st] , A[st+1] ... A[dr]) 1 <= st <= dr <= N , trebuie să calculați suma tuturor F(st , dr) posibile.

RAU-Gigel și Vlad sunt prieteni buni și le place tot timpul să se provoace unul pe altul. De data aceasta, RAU-Gigel a inventat o problemă interesantă de matematică.

Acesta are un arbore secret cu N noduri (numerotate de la 1 la N), în care fiecare nod are asociată o valoare (pe lângă numărul său de ordine din arbore), care este un număr natural și ii spune lui Vlad informații despre unele drumuri din acest arbore. O informație are forma x, y, val și reprezintă faptul că lanțul din arbore de la nodul x la nodul y are cel mai mare divizor comun al valorilor asociate nodurilor acestuia egal cu val, unde val este un număr natural nenul.

Vlad știe că RAU-Gigel minte câteodată și s-ar putea ca unele dintre restricțiile date să fie eronate, astfel că vrea să afle întâi folosind informațiile ce le are la îndemână dacă ar putea exista un arbore care să respecte toate restricțiile date de prietenul său.

Pentru că știe ce programator iscusit ești, Vlad ți-ar fi foarte recunoscător daca l-ai putea ajuta cu această problemă prin a scrie un program care să o rezolve cât mai eficient.

Du-te sus!