fbpx

Problema #1892 – Snorocos – Rezolvari PBInfo

de Mihai-Alexandru

Un număr natural nenul n se numește norocos dacă pătratul lui se poate scrie ca sumă de n numere naturale consecutive. Exemplu:

3 deoarece 3 * 3 = 2 + 3 + 4

7 deoarece 7 * 7 = 4 + 5 + 6 + 7 + 8 + 9 + 10

Cerința

Se dă un număr natural n. Dacă numărul este norocos afișați cele n numere consecutive care adunate dau pătratul acestuia.

Date de intrare

Programul citește de la tastatură numărul n.

Date de ieșire

Daca n este norocos, programul va afișa pe ecran cele n numere consecutive care adunate dau n * n, separate prin spații. In caz contrar, programul va afișa mesajul NU ESTE NOROCOS

Restricții și precizări

  • 1 ≤ n ≤ 1000

Exemplu

Intrare

7

Ieșire

4 5 6 7 8 9 10

Explicație

7 este numar norocos iar 7 * 7 se poate scrie ca 4 + 5 + 6 + 7 + 8 + 9 + 10

#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n;
    cin >> n;
    if (n % 2 == 1)
    {
        int k=(n+1)/2;
        while(n)
        {
            cout<<k<<" ";
            k++;
            n--;
        }
    }
    else
    cout << "NU ESTE NOROCOS";
}
Comentarii

S-ar putea sa iti placa