You are on page 1of 1

#include <iostream>

#include <fstream>
#include <cmath>
using namespace std;
int x[10]; // vectorul declarat global ca sa fie plin de 0

bool bun(int i, int k) // functie care verifica daca toate elementele pana la i inclusiv
sunt distincte
{     
        for(int j=1;j<=i-1;j++)
        {
                        if(x[j]==x[i])
                                return false;
                        if(abs(x[j]-x[j+1])>k)return 0;
        }
return true;
}

int main()
{int n,i,j,k;
cin>>n>>k;
i=1;
while(i)
{x[i]++;
    if(x[i]>n)
        {x[i]=0; i--;}
    else if(bun(i,k)) // la fiecare pas verifica conditia de "bun"
        {

                        if(i==n) // daca a trecut de "bun" si i==n inseamna ca e buna


               {

                                    for(j=1;j<=i;j++) // afiseaza solutia


                                                cout<<x[j]<<' ';

                                      cout<<endl;}
                        else i++;}
}
return 0;
}

You might also like