306
Cerinţa
Se dă un șir cu n
numere naturale. Determinați suma celor care au oglinditul număr prim.
Date de intrare
Programul citește de la tastatură numărul n
, iar apoi n
numere naturale.
Date de ieşire
Programul afișează pe ecran numărul S
, reprezentând rezultatul cerut.
Restricţii şi precizări
1 ≤ n ≤ 1000
- cele
n
numere citite vor fi mai mici decât1.000.000.000
Exemplu
Intrare
6 133 35 41 31 90 7
Ieșire
206
Explicație
Dintre cele 6
numere citite au oglinditul număr prim: 133 35 31 7
. Suma lor este 206
.
#include <bits/stdc++.h> using namespace std; int prim (int n) { if (n==0 || n==1) return 0; if(n==2) return 1; if(n%2==0) return 0; for (int i=3;i*i<=n;i += 2) if(n%i==0) return 0; return 1; } int main() { long long n,x,s=0; cin>>n; for(int i=1;i<=n;i++) { cin>>x; int ogl=0; int aux=x; while(x!=0) { ogl=ogl*10+x%10; x/=10; } if(prim(ogl)) s=s+aux; } cout<<s; return 0; }
Comentarii