| #include <iostream> #include <fstream> using namespace std; int main() { ifstream f("regat1.in"); ofstream g("regat.out"); int i,j,k,n,v[100001],maxpal,inv,pr[100001],ok1,ok2; int cifra,copie,primul=0; f>>n; for(i=1;i<=n;i++) f>>v[i]; f.close(); k=0; maxpal=-1;//nu exista!! for(i=1;i<=n;i++) { copie=v[i]; inv=0; while(copie!=0) { cifra=copie%10; inv=inv*10+cifra; copie=copie/10; } cout<<endl<<v[i]<<"=?="<<inv<<endl; if(v[i]==inv)//este!! { if(!primul) { maxpal=v[i]; primul++; } else if (maxpal<v[i]) maxpal=v[i]; ok1=0; ok2=0; //pentru stanga if(i>1) { copie=v[i-1]; for(j=2;j<=copie/2;j++) if(copie%j==0) ok1=1; }else ok1++; //pentru dreapta |
if(i<n) { copie=v[i+1]; for(j=2;j<=copie/2;j++) if(copie%j==0) ok2=1; }else ok2++; if(ok1==0 || ok2==0) { k++; pr[k]=v[i]; cout<<k<<" "<<pr[k]<<endl; } }//palindrom }//for if(maxpal>0) g<<maxpal<<endl; else {g<<"Nu exista!!"<<endl; g<<"Nu exista!!";} if(!k && maxpal>0) g<<"Nu exista!!"; else for(j=1;j<=k;j++) g<<pr[j]<<" "; g.close(); return 0; } |
