281
Cerința
Se dau patru numere naturale n a x y
. Să se afișeze elementele mulțimii M
, cu următoarele proprietăți:
- toate elementele lui
M
sunt numere naturale mai mici sau egale cun
; a
se află înM
;- dacă
b
se află înM
, atuncib+x
șib+y
se află înM
.
Date de intrare
Programul citește de la tastatură numerele n a x y
.
Date de ieșire
Programul va afișa pe ecran elementele mulțimii M
, în ordine crescătoare, separate prin câte un spațiu.
Restricții și precizări
1 ≤ n ≤ 10000
1 ≤ x , y ≤ 10000
0 ≤ a ≤ 10000
Exemplu
Intrare
25 3 4 11
Ieșire
3 7 11 14 15 18 19 22 23 25
#include <bits/stdc++.h> using namespace std; const int MAX_N = 10000; int n, x, y; bool apartine[1 + MAX_N] ; void genereaza(int b) { if (b <= n && !apartine[b]) { apartine[b] = true; genereaza(b + x); genereaza(b + y); } } int main() { int a; cin >> n >> a >> x >> y; genereaza(a); for (int i = 0; i <= n; i++) if (apartine[i]) cout << i << ' '; return 0; }
Comentarii