Pagini recente »
Atașamentele paginii Profil flavius.gherasim
|
Atașamentele paginii Profil GabrielMarfon
|
Istoria paginii utilizator/stefanandrei123
|
Atașamentele paginii Profil AndreiSavu
|
Diferențe pentru problema/mirror între reviziile 13 și 15
Nu există diferențe între titluri.
Diferențe între conținut:
== include(page="template/taskheader" task_id="mirror") ==
Numim „oglinda” numărului natural nenul a, numărul b, obținut prin modificarea fiecărei cifre din reprezentarea sa binară,
de exemplu pentru a=22[~(10)~] =10110[~(2)~] se obține 01001[~(2)~] = 9[~(10)~] = b.
Numim „oglinda” numărului natural nenul a, numărul b, obținut prin modificarea fiecărei cifre din reprezentarea sa binară, de exemplu pentru a=22[~(10)~] =10110[~(2)~] se obține 01001[~(2)~] = 9[~(10)~] = b.
h2. Cerințe:
Cunoscându-se numerele naturale N, K și cele N numere natural nenule, scrieți un program care:
Cunoscându-se numerele naturale N, K și cele N numere natural nenule, scrieți un program care:
1) Transformă în baza doi termenii șirului dat obținându-se un nou șir format din alipirea cifrelor binare. Din acest șir se vor determina și afișa, separate prin câte un spațiu, toate reprezentările în baza 10 corespunzătoare secvențelor alăturate de exact K cifre binare, parcurse de la stânga la drepta. Dacă ultima secvență nu are exact K cifre binare, atunci aceasta nu se va mai lua în considerare.
2) Să aplice K transformări asupra șirului inițial, înlocuind la fiecare pas orice termen cu „oglinda” sa. Asupra termenilor care devin zero nu se vor mai efectua alte operații. După efectuarea celor K transformări, să se determine cea mai lungă secvență de numere care au cifra 1 pe aceeași poziție în reprezentarea lor în baza doi. Dacă sunt mai multe astfel de secvențe având lungimea maximă, se va afișa cea mai din stânga.
Nu există diferențe între securitate.