链接:https://ac.nowcoder.com/acm/problem/275683
来源:牛客网
题目描述
又是一年一度的毕业季,一群学生准备去拍摄毕业照。
具体来说,一共有 n 个同学共同参与拍照,第 ii 个学生两次眨眼的时间间隔为 ai 。在拍照开始前,我们可以认为所有人在第 0 秒都眨了一次眼。
由于调整相机需要一定的时间,因此在最初的2秒内不能进行拍照(即需要保证拍照的时刻 x≥2\mathrm{x \ge 2}x≥2)。请计算,为了确保每个人的眼睛都处于睁开状态,至少需要等待多少秒后才能进行拍照。
第一行给出一个整数 T(1≤T≤5×104) ,表示数据组数。
对于每组测试数据,第一行给出一个整数 n(1≤n≤2×105,∑n≤2×105)\mathrm{n}(\mathrm{1 \le n \le 2\times 10^5},\mathrm{\sum n \le 2\times 10^5})n(1≤n≤2×105,∑n≤2×105),表示总人数。第二行给出 n\mathrm{n}n 个整数 ai(2≤ai≤109)\mathrm{a_i}(\mathrm{2 \le a_i \le 10^9})ai(2≤ai≤109),依次表示每个人两次眨眼的间隔时间。
每组测试数据输出一个整数,表示最小等待时间。
示例1
372
----
一开始以为是差分数组,实际是求这些数中最小的素数,
没有包含在这些数中的。
先欧式筛找到所有素数。然后把元素放到set中,找最小的没在set中的素数,找到返回即可。