Pagina informaticii

Teste de informatică pentru liceu, articole C#, C/C++, PHP

Test de evaluare sumativa la metoda backtracking

Rândul 1

1. Se citeşte de la tastatură un număr natural S. Utilizând metoda backtracking (varianta nerecursivă), scrieţi un program care să afişeze toate şirurile de cifre nenule distincte cu proprietatea că suma cifrelor este S. De exemplu, pentru S = 12 trei din soluţii sunt: 6 + 5 + 1, 3 + 2 + 6, 1 + 2 + 4 + 5

2. Utilizând metoda backtracking (varianta recursivă), să se scrie un program care citeşte două numere naturale n şi p şi afişează toate şirurile strict crescătoare de p numere din mulţimea {1,2, …, n} cu proprietatea că diferenţa dintre oricare două numere alăturate din şir este mai mică sau egală cu 3. De exemplu, pentru n=12, p=4 trei soluţii sunt : 2  4  5  8,    8  9  10  11,    1  4  7  10

 

Rândul 2

1. Se citeşte de la tastatură numărul natural n. Utilizând metoda backtracking (varianta nerecursivă), scrieţi un program care să afişeze toate şirurile de n cifre nenule distincte cu proprietatea că diferenţa în modul dintre oricare două numere alăturate din şir este strict mai mare decât 4. De exemplu, pentru n=3, trei soluţii sunt : 1  9  2,  8 2 7,  6, 1, 7

2. Utilizând metoda backtracking (varianta recursivă), să se scrie un program care citeşte un număr natural n şi afişează toate permutările mulţimii {1,2, …, n} care nu au puncte fixe. De exemplu, pentru n=4 două soluţii sunt : (2, 3, 4, 1)  (4, 3, 1, 2)  

Despre autor
Author

Dan Pracsiu deţinător www.dponline.ro
Profesor, Liceul Teoretic "Emil Racoviță" Vaslui
Membru în Comisia Naţională a Olimpiadelor de Informatică
Pasiuni: istoria, călătoriile, fotografia, muzica clasică

Scrie un comentariu
Nume:

Comentariu:

15 + 10 =