[code] PTA 胡凡算法笔记 DAY046
Posted wait_for_that_day5
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[code] PTA 胡凡算法笔记 DAY046相关的知识,希望对你有一定的参考价值。
文章目录
题目 B1013 数素数
-
题意
输入m,n
,输出第m
个素数到第n
个素数之间所有的素数(包含两端)。 -
思路
为了不要每次输出的时候去判断要输出哪个数,先利用初始化函数,初始化好第m
到第n
个素数的值,然后写好判断素数的函数和控制输出格式即可。 -
Code in C++
#include <cstdio>
#include <cmath>
const int MAXN = 10001;
long long prime[MAXN];
bool isPrime(long long num)
if (num <= 1) return false;
for (long long i = 2; i <= std::sqrt(num); ++i)
if (num % i == 0) return false;
return true;
void init(int s, int e)
int count = 0;
for (long long i = 2; count < e; ++i)
if (isPrime(i))
++count;
if (count >= s)
prime[count-s] = i;
int main()
int m, n;
scanf("%d %d", &m, &n);
init(m, n);
for (int i = 0; i <= n - m; ++i)
if (i % 10)
printf(" ");
else if (i != 0)
printf("\\n");
printf("%lld", prime[i]);
return 0;
小结
就是简单地在判断素数的基础上加了一层,找第几个素数的问题。
以上是关于[code] PTA 胡凡算法笔记 DAY046的主要内容,如果未能解决你的问题,请参考以下文章