Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Sa se genereze toate numerele naturale de k cifre, avand toate cifrele in ordine crescatoare si
- //ultima cifra para.
- #include <stdio.h>
- int k, st[100];
- int valid(int p)
- {
- int i, c = 0;
- if (p > 1)
- if (st[p] < st[p-1]) // se verifica ordinea crescatoare
- return 0;
- if (st[1] == 0) // se verifica sa nu fie 0 pe primul nivel stiva
- return 0;
- return 1;
- }
- void afis()
- {
- int i;
- for (i=1; i<=k; i++)
- printf("%d", st[i]);
- printf("\n");
- }
- void backtr(int p)
- {
- int i;
- for (i=0; i<=9; i++) // luam toate cifrele, de la 0 la 9
- {
- st[p] = i;
- if (valid(p))
- if (p == k)
- if(st[p]%2==0)
- afis();
- else;
- else
- backtr(p+1);
- }
- }
- int main()
- {
- scanf("%d",&k);
- backtr(1);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement