题目名称 4278. [THUPC 2025 Final] 排列与质数
输入输出 thupc_2025_permprime.in/out
难度等级 ★★★
时间限制 2000 ms (2 s)
内存限制 256 MiB
测试数据 16
题目来源 GravatarLikableP 于2026-01-28加入
开放分组 全部用户
提交状态
分类标签
构造 数论
查看题解 分享题解
通过:1, 提交:1, 通过率:100%
GravatarLikableP 100 0.449 s 3.80 MiB C++
关于 排列与质数 的近10条评论(全部评论)

4278. [THUPC 2025 Final] 排列与质数

★★★   输入文件:thupc_2025_permprime.in   输出文件:thupc_2025_permprime.out   评测插件
时间限制:2 s   内存限制:256 MiB

【题目描述】

给定正整数 $n$,构造一个 $1$ 至 $n$ 的排列 $p_1,p_2,\dots,p_n$ 满足以下条件:

  • 对于 $1 \le i \le n$,设 $c_i = \left\lceil \frac{p_1+p_2+\dots +p_i}{i} \right\rceil$,则在 $c_1,c_2,\dots,c_n$ 中至少有 $\left\lfloor \frac{n}{3} \right\rfloor - 1$ 个质数。

【输入格式】

本题有多组测试数据。输入的第一行一个整数 $t\ (1 \le t \le 10)$ 表示测试数据组数,接下来依次描述每组测试数据。

每组测试数据输入一行一个整数 $n\ (2 \le n \le 10 ^ 5)$。

【输出格式】

对于每组数据输出满足题设条件的任意一个排列 $p_1,p_2,\dots,p_n$。保证这样的排列存在。

【输入样例】

2
2
3

【输出格式】

2 1
2 1 3

【样例解释】

对于第一组测试数据,我们有 $c_1 = \left\lceil \frac{2}{1} \right\rceil = 2$ 和 $c_2 = \left\lceil \frac{2+1}{2} \right\rceil = 2$。两个都是质数。

对于第二组测试数据,$c_1 = c_2 = c_3 = 2$。

【来源】

清华大学学生算法协会 GitLink 仓库