4 Comments

    1. Ba da. O solutie banala ar fi sa se parcurga numerele de la 0 pana la n – k. La fiecare astfel de numar, se face suma urmatorilor k termeni (ori cu formula matematica, ori printr-un for). Vrem ca suma asta sa fie n. Daca e mai mare, ne oprim si afisam “Nu exista”. O alta solutie ar fi gasirea numarului prim cautare binara in intervalul (0, n-k). Conditia e ca suma dintre elementul din mijloc si urmatorii k sa fie egala cu n. Daca e mai mica ne ducem in stanga, iar daca e mai mare ne ducem in dreapta.

      2

      Reply

      1. Multumesc mult! O las aici, in caz ca mai doreste cineva:

        #include
        using namespace std;
        int i,j,k,n,s;
        int main()
        {
        cin>>n>>k;
        for(i=1; i<=n-k; i++)
        {

        for(j=i; jn)
        {

        cout<<"nu exista";
        break;
        }
        if(s==n)
        {

        for(j=i; j<=k+i-1; j++)
        cout<<j<<" ";
        break;
        }
        s=0;
        }
        return 0;
        }

        1

        Reply

Leave a Reply

Your email address will not be published. Required fields are marked *