1289 - CifreGen2
Cerința[edit | edit source]
Se dă un număr natural n. Să se genereze toate numerele cu exact n cifre prime.
Date de intrare[edit | edit source]
Programul citește de la tastatură numărul n.
Date de ieșire[edit | edit source]
Programul va afișa pe ecran numerele generate, câte unul pe linie, în ordine crescătoare.
Restricții și precizări[edit | edit source]
- 1 ⩽ n ⩽ 7
Exemplul 1[edit | edit source]
- Intrare
- 2
- Ieșire
- 22
- 23
- 25
- 27
- 32
- 33
- 35
- 37
- 52
- 53
- 55
- 57
- 72
- 73
- 75
- 77
Exemplul 2[edit | edit source]
- Intrare
- 0
- Ieșire
- Datele nu corespund restrictiilor impuse
Rezolvare[edit | edit source]
<syntaxhighlight lang="python" line>
- 1289 - CifreGen2
n = 0 x = [0] * 10 prime = [2, 3, 5, 7]
def read():
global n n = int(input())
def display():
for i in range(1, n + 1): print(x[i], end=) print()
def check_restrictions():
return 1 <= n <= 7
def backtracking(k):
if k > n: display() else: for i in range(4): x[k] = prime[i] backtracking(k + 1)
def main():
read() if not check_restrictions(): print("Datele nu corespund restrictiilor impuse") else: backtracking(1)
if __name__ == "__main__":
main()
</syntaxhighlight>