Druhá série nultého ročníku KSP

Tyto úlohy pocházejí z desetileté ročenky KSP. Jejich řešení bohužel nemáme v elektronické podobě, takže na ně budete muset přijít sami.

Zadání úloh


0-2-1 Průnik řádků


Je dána matice celých čísel A o rozměrech M×N, prvky v každém jejím řádku jsou uspořádány vzestupně. Sestrojte program, který nalezne a vypíše každé číslo, které se nachází ve všech řádcích matice, tj. vypíše průnik všech množin čísel tvořených jednotlivými řádky matice.

Příklad: Pro matici

A=
( 1 4 5 5 9 )
1 2 3 5 9
3 5 6 9 0

program vypíše čísla 5 a 9.


0-2-2 Vkládání znamének


Mějme napsány cifry 123456789 v tomto pořadí. Mezi některé cifry je třeba vložit znaménko + nebo - tak, aby výsledek byl roven číslu 100, např.

123+45-67+8-9=100.

Sestavte program, který nalezne a vypíše všechna řešení této úlohy.


0-2-3 Dobrá uzávorkování


Je dáno přirozené číslo N. Sestavte program, který z N levých a N pravých závorek vytvoří a vypíše všechny dobře uzávorkované výrazy, tj. takové výrazy, že při průchodu výrazem zleva doprava bude počet levých závorek vždy větší nebo roven počtu pravých závorek. Např. pro N=2 program vypíše:

(())()()

Poznámka: Výrazem v této úloze rozumíme posloupnost levých a pravých závorek.


0-2-4 Kvadráty cifer


Nechť S(X) je součet druhých mocnin cifer desítkového zápisu přirozeného čísla X. V posloupnosti X, S(X), S(S(X)), S(S(S(X))),… se po konečném počtu kroků vyskytne vždy číslo 1 nebo 4. Sestavte program, který nalezne a vypíše všechny počáteční hodnoty X menší než 1000 takové, že se v této posloupnosti objeví číslo 1.