3102. 质数距离
时间限制:1000 MS 内存限制:64 MB
题目描述
# 质数距离 ## 题目描述 给定整数 $L$ 和 $U$,找出闭区间 $[L,U]$ 内所有质数。按从小到大的顺序,将其中连续出现的两个质数称为一对相邻质数。 请找出距离最近的相邻质数对 $C_1,C_2$,以及距离最远的相邻质数对 $D_1,D_2$。两对质数的距离分别为 $C_2-C_1$ 和 $D_2-D_1$。如果有多对相邻质数的距离相同,取按质数从小到大扫描时最先出现的一对。 ## 输入格式 输入包含多组数据,处理至文件末尾。每行包含两个整数 $L$ 和 $U$,表示一组数据。 ## 输出格式 对于每组数据,输出一行。 如果区间内至少有两个质数,按以下格式输出: ``` C1,C2 are closest, D1,D2 are most distant. ``` 其中 `C1`、`C2`、`D1`、`D2` 分别替换为对应的整数。逗号后不添加空格。 如果区间内不足两个质数,输出: ``` There are no adjacent primes. ``` ## 数据范围 对于每组数据,$2\le L<U\le 10^8$,且 $U-L\le 10^6$。 ## 样例输入 ``` 2 17 14 17 ``` ## 样例输出 ``` 2,3 are closest, 7,11 are most distant. There are no adjacent primes. ```