全re,但是cb上可以运行
查看原帖
全re,但是cb上可以运行
105820
阿尔托莉雅丶楼主2020/9/27 23:53
#include<stdio.h>
#include<string.h>
#include<stdbool.h>

int re(int);
void zs(int);

bool isprime[10000001];
int prime[700000];
int counter = 0;

int main()
{
 	int s, e, i;

 	scanf("%d%d", &s, &e);
 	if(e > 10000000)
        e = 10000000;

 	zs(e);

 	for(i = 1;prime[i] <= e; i++)
    {
        if(prime[i] < s)
            continue;
        else
            if(re(prime[i]))
                printf("%d\n", prime[i]);
    }
    return 0;

}

int re(int n)
{
    int b = n, num = 0;
    while(b != 0)
    {
        num = num * 10 + b % 10;
        b /= 10;
    }

    if(num == n)
        return 1;
    else
        return 0;
}

void zs(int n)
{
    int i, j;
    memset(isprime, 1, sizeof(isprime));

    for(i = 2;i <= n; i++)
    {
        if(isprime[i])
            prime[++counter] = i;
        for(j = 1; j <= counter && i * prime[j] <= n; j++)
        {
            isprime[i * prime[j]] = 0;

            if(i % prime[j] == 0)
                break;
        }
    }

}

在看了众多dalao的代码后终于码出一个但是居然全re哭了

2020/9/27 23:53
加载中...