Type: RemoteJudge 3000ms 512MiB

【模板】线性筛素数

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目背景

本题已更新,从判断素数改为了查询第 kk 小的素数。

提示:本题输入输出、运算数据量较大。

  • 对于 C++ 语言,如果你使用 cin 来输入输出,建议使用 std::ios::sync_with_stdio(0) 来加速,同时使用 '\n' 换行输出。
  • 对于 Java 语言,使用线性筛并且优化输入输出,也可以在规定时限内通过本题,但是时限可能较紧张。
  • 对于 Python 语言,语言性能差异较大,需要使用到 numpy 库的数组以替代列表,且使用埃氏筛法,依然可以在合适的时间和内存消耗下通过本题。

题目描述

如题,给定一个范围 nn,有 qq 个询问,每次输出第 kk 小的素数。

输入格式

第一行包含两个正整数 n,qn,q,分别表示查询的范围和查询的个数。

接下来 qq 行每行一个正整数 kk,表示查询第 kk 小的素数。

输出格式

输出 qq 行,每行一个正整数表示答案。

100 5
1
2
3
4
5
2
3
5
7
11

提示

【数据范围】
对于 100%100\% 的数据,n=108n = 10^81q1061 \le q \le 10^6,保证查询的素数不大于 nn

Data by NaCly_Fish.

模板训练1

Not Attended
Status
Done
Rule
IOI
Problem
12
Start at
2025-7-7 8:00
End at
2025-7-9 0:00
Duration
40 hour(s)
Host
Partic.
22