#P1856. 【淘天】2024-8-29-第三题-生成树权值

【淘天】2024-8-29-第三题-生成树权值

题目描述

鸭哥有一个nn个整数的数组a1,a2,...,an{a_1,a_2,...,a_n},他想两两将这些数字连成一张图,规则为:从数组中选取任意两个数字aia_iaj(ij)a_j(i\ne j),如果ai+aja_i+a_j为质数,则将这两个点相连,边权即为ai+aja_i+a_j

连出的图可能由若干个连通块构成,鸭哥只关心那些点数最多的连通块,他想要知道,这些连通块能构成的全部生成树中,权值最小的那棵的权值是多少。你只需输出这棵生成树的权值。

对于一张nn个节点的图,选择其中n1n-1条边,使得所有顶点联通,这些边一定会组成一棵树,即为这张图的一棵生成树。可以证明,图中存在至少一棵生成树。

输入描述

第一行输入一个整数n(1n103)n(1\le n\le 10^3)代表鸭哥拥有的数字数量。

第二行输入nn个整数a1,a2,...,an(0ai106)a_1,a_2,...,a_n(0\le a_i\le 10^6)代表鸭哥的数字。

输出描述

在第一行上输出一个整数,代表在点数最多的连通块上,全部生成树中权值最小的那棵的权值。

样例1

输入

5
2 3 1 2 0

输出

10

样例解释

该样例连出的图如下图所示,由于仅有一个连通块,故直接输出权值最小的生成树即可。

Centered Image

样例2

输入

5
2 3 7 6 19

输出

5

样例解释

该样例连出的图如下图所示。

Centered Image