Lista de probleme 1991

Filtrare

#2407 odaoni

Aflaţi câţi divizori ai lui n au mulţimea cifrelor din scrierea lor inclusă în mulţimea cifrelor din scrierea lui n.

Să se scrie un program care calculează numărul de divizori ai unui număr natural citit din fișier.

Scrieţi un program care să citească numărul natural N şi o cifră k și care să determine:

a) de câte ori apare cifra k în numărul N; (30% din punctaj)
b) numărul obținut după modificarea numărului N; (70% din punctaj)

Olimpiada locală de informatică București 2018

#268 DivK

Se dau n numere naturale şi un număr natural k. Afişaţi acele numere date care au cel puţin k divizori.

Indicatorul lui Euler, φ(n) – câteodată numit funcția phi, e folosit pentru a determina câte numere pozitive mai mici decât n care sunt relativ prime cu n există. De exemplu, cum 1, 2, 4, 5, 7 și 8 sunt toate mai mici decât 9 și sunt relativ prime la 9, φ(9)=6. Numărul 1 e considerat a fi relativ prim cu toate numerele naturale, deci φ(1)=1. În mod interesant, φ(87109)=79180, și se poate observa că 87109 e o permutare a lui 79180.

Se consideră un șir de cel mult 10000 de numere naturale distincte mai mici decât 10.000.000. Să se scrie un program care găsește valoarea lui n, pentru care φ(n) e o permutare a lui n și fracția n/φ(n) are valoare minimă. Dacă sunt mai multe valori cu aceeași proprietate atunci se scrie prima valoare din șir. Dacă nu sunt valori cu proprietatea menționată se va scrie valoarea 0.

Un perete dreptunghiular de lățime L și o înălțime foarte mare (teoretic infinită) trebuie să fie protejat la bază cu plăci dreptunghiulare de faianță, de dimensiuni A și respectiv B. Plăcile se monteză una lângă cealaltă, pe mai multe rânduri orizontale, de jos în sus, pe fiecare rând de la stânga la dreapta, TOATE plăcile fiind așezate ”în picioare” (cu latura de mărime A pe orizontală și cea de mărime B pe verticală) sau TOATE ”culcate” (cu latura de mărime B pe orizontală și cea de mărime A pe verticală). Pentru a nu se pierde material, dacă la capătul unui rând nu încape o placă întreagă, se taie din ea porțiunea necesară, porțiunea rămasă fiind folosită la începutul rândului următor.

Pe rândul al doilea se montează plăcile în continuare în același mod, completându-l la capăt cu o porțiune de placă, restul de placă fiind folosit pe rândul al treilea etc. până ce rândul se încheie cu o placă întreagă, nemaifiind necesară nicio completare cu o porțiune de placă. În acest moment procesul de placare se încheie.Dacă primul rând se încheie cu placă întreagă, atunci placarea se încheie cu un singur rând completat.

Cunoscând lățimea L a peretelui și dimensiunile A și B ale plăcilor de faianță, stabiliți înălțimea maximă placată care se poate obține după metoda descrisă mai sus.

Se dau n numere naturale. Aflaţi câte dintre ele sunt palindrom prim norocoase. Un număr este palindrom prim norocos dacă este palindrom (egal cu răsturnatul său, de exemplu 121), prim (are exact 2 divizori, de exemplu 3) şi norocos (pătratul numărului se poate scrie ca sumă de numere consecutive, exemplu 3. 3 * 3 = 9 = 2 + 3 + 4).

Dându-se un numerele n și k, să se afle cel mai mic număr de n cifre, cu restul împărţirii la 9 egal cu k.

#1797 SirDiv3 C++

Dandu-se un sir, sa se afle cate din primele n numere sunt divizibile cu 3.

#2371 Biliard

Avem la dispoziție o masa de biliard dreptunghiulara. O bila pornește din colțul stânga jos al dreptunghiului sub un unghi de 45 grade față de latura de jos a dreptunghiului și lovește latura de sus sau latura din dreapta. Aici ricoșează (pornește spre o altă latură tot sub un unghi de 45 grade față de latura de care s-a lovit). Își continuă drumul până când ajunge într-un colț al dreptunghiului.

Scrieți un program care calculează de câte ori (nrSchimb) mingea își schimbă direcția de mers până când se oprește într-un colț. Punctul de pornire nu se numără.