Cerința
Gigel vrea un calculator nou care are prețul x
. Tatăl acestuia, fiind profesor de matematica, i-a spus ca îi va cumpăra calculatorul dacă prețul x
al acestuia este norocos. Un număr x
este norocos dacă pătratul acestuia se poate scrie ca sumă de x
numere consecutive. De exemplu, x = 7
este număr norocos deoarece, 7 * 7 = 4 + 5 + 6 + 7 + 8 + 9 + 10
.
Gigel a obţinut T
oferte de preț și dorește să știe pentru fiecare dintre acestea dacă prețul este corespunzătar restricției pe care i-a impus-o tatăl său.
Date de intrare
Fișierul de intrare pc.in
conține pe prima linie un singur număr natural T
, reprezentând numărul de oferte. Pe a doua linie se află T
numere naturale x
1
x
2
x
3
… x
T
separate prin câte un spaţiu, cu semnificația din enunț.
Date de ieșire
Fișierul de ieșire pc.out
va conține pe prima linie, separate prin câte un spațiu, cele T
răspunsuri, în ordine: 1
dacă oferta este corespunzătoare restricției impuse și 0
în caz contrar.
Restricții și precizări
x < 2.000.000.000
T < 10
Exemplu
pc.in
3 3 4 7
pc.out
1 0 1
#include <bits/stdc++.h> using namespace std; ifstream fin("pc.in"); ofstream fout("pc.out"); int main() { int n; fin >> n; int a[10]; for(int i = 0 ; i < n ; ++i) fin >> a[i]; for(int i = 0 ; i < n ; ++i) { if(a[i]%2==0) fout << 0 << ' '; else fout << 1 << ' '; } fin.close(); fout.close(); return 0; }