高精度乘和加
高精度乘和加
void cheng(int *a,int c)
{
int jw=0;
for(int i=0;i<1000;i++)
{
a[i]=a[i]*c+jw;
jw=a[i]/10;
a[i]%=10;
}
}
void jia(int *a,int *c)
{
int f=0;
for(int i=0;i<1000;i++)
{
c[i]+=a[i]+f;
f=c[i]/10;
c[i]%=10;
}
}
欧拉筛
欧拉筛
void sushu(){
a[0]=a[1]=1;
int k=0;
for(int i=2;i<=n;i++){
if(!a[i])
b[++k]=i;
for(int j=1;j<=k,b[j]*i<=n;j++){
a[i*b[j]]=1;
if(i%b[j]==0)
break;
}
}
}
判断回文加素数筛
判断回文加素数筛
int huiwen(int x){
int y=x,ans=0;
while(y){
ans=ans*10+y%10;
y/=10;
}
if(ans==x)
return 1;
else
return 0;
}
void sushu(int n)
{
b[0]=b[1]=1;
for(int i=2;i*i<=n;i++){
if(!b[i]){
for(int j=i*i;j<=n;j+=i){
b[j]=1;
}
}
}
}