Cod sursa(job #2932873)

Utilizator Vali_nnnValentin Nimigean Vali_nnn Data 4 noiembrie 2022 09:43:52
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.06 kb
#include<fstream>
using namespace std;
ifstream f("k.in");
	ofstream g("superprim.out");

	int oglindit (int k)
	{int x=0;
	while(k)
	  {x=x*10+k%10;
	  k=k/10;

	  }
	  return x;
	}
const int N=201,MOD=98999;
int t,n,m,speta,v[1000001],p,i,j,a[100001],maxim=0,maximi,maximj,b[100001],c[100001];

int main()
{f>>p;
v[1]=1;
for(i=2;i<=100000;i++)
    if(v[i]==0)
for(j=i+i;j<=100000;j=j+i)
    v[j]=1;


   f>>n;

   for(i=1;i<=n;i++)
    f>>a[i];
    for(i=1;i<=n;i++)
        b[i]=oglindit(a[i]);

if(p==1)
{for(i=1;i<=n;i++)
   if(v[a[i]]==0&&a[i]>maxim&&v[b[i]]==0)
        maxim=a[i];

       g<<maxim;
}

if(p==2)
{
for(i=1;i<=n;i++)
    c[i]=a[i];

 for(i=1;i<=n;i++)
    {a[i]=v[a[i]];
    b[i]=v[b[i]];}

     for(i=1;i<=n;i++)
    if(b[i]==0&&a[i]==0)
    {j=i;
    while(b[j]==0&&a[j]==0&&j<=n)
        j++;
j--;
    if(j-i+1>maxim)
    {maxim=j-i+1;
    maximi=i;
    maximj=j;

    }
      i=j+1;
    }
   g<<maximi<<" "<<maximj<<" "<<maxim<<'\n';
   for(i=maximi;i<=maximj;i++)
    g<<c[i]<<" ";

}


}