fbpx

Problema #132 – ElemPP – Rezolvari PBInfo

de Mihai-Alexandru

Se citeşte n şi un şir de n numere naturale.

Cerinţa

Să se afișeze elementele din șir care au proprietatea că primele două cifre din scrierea zecimală formează un pătrat perfect.

Date de intrare

Fişierul de intrare elempp.in conţine pe prima linie numărul n şi pe a doua linie n numere naturale separate prin spaţii.

Date de ieşire

Fişierul de ieşire elempp.out va conţine pe prima linie elementele din șirul dat care respectă proprietatea precizată. Ordinea acestor elemente este cea în care se află în șirul dat.

Restricţii şi precizări

  • 1 ≤ n ≤ 20
  • numerele de pe a doua linie a fişierului de intrare vor fi mai mici decât 1.000.000.000 și au cel puțin două cifre

Exemplu

elempp.in

5
253 16 225 100 3678

elempp.out

253 16 3678
#include <bits/stdc++.h>

using namespace std;
ifstream fin("elempp.in");
ofstream fout("elempp.out");
int pp(int n)
{
    while(n>99)
    {
        n=n/10;
    }
    if(sqrt(n)==(int)sqrt(n)) return 1;
    else return 0;
}
int main()
{
    int n,a[21];
    fin>>n;
    for(int i=0;i<n;i++) fin>>a[i];
    for(int i=0;i<n;i++)
    {
        if(pp(a[i])) fout<<a[i]<<" ";
    }
    return 0;
}
Comentarii

S-ar putea sa iti placa