题目背景
称一个正整数 p 为质数,当且仅当 p≥2,且 p 的正整数因子只有 1,p。
如果您仍有疑问,可以参考质数列:https://oeis.org/A000040。
题目描述
云小斗正在游玩一款塔防游戏,在其中一个关卡,他占据了 n×n 个高塔。
每个高塔 (i,j) 当前都有一个能量值 ai,j。一个高塔称作被激活当且仅当它的能量值为一个质数。
在敌人入侵前,云小斗能够进行任意次充电操作,每次可以选择一个高塔,使其能量值增加恰好 1。
在操作后,云小斗只有在以下情况中才能获胜:
- 存在 1≤i<j≤n,使得第 i,j 行的高塔均被激活;
- 存在 1≤i<j≤n,使得第 i,j 列的高塔均被激活;
- 存在 1≤i,j≤n,使得第 i 行、第 j 列的高塔均被激活。
云小斗当然希望他能够获胜,他想知道,最少需要经过几次充电操作。
输入格式
从文件 activation.in 中读入。
第一行一个整数 n。
接下来 n 行,第 i 行 n 个整数,表示第 i 行高塔的当前能量值,第 j 个数表示 ai,j。
输出格式
输出到文件 activation.out 中。
输出一行一个整数,即云小斗最少需要进行的充电操作次数。
输入输出样例
输入样例 1
2
2 3
1 4
输出样例 1
1
样例 1 说明
对 a2,1 进行一次充电之后,其能量值变为 2。
此时第 1 行两个高塔的能量值为 2,3,均为质数;第 1 列两个高塔的能量值为 2,2,均为质数。故云小斗可以获胜。
容易证明这是最少的操作次数。
样例 2
见下发压缩包中 activation2.in 与 activation2.ans。
该样例符合测试点 1∼2 的限制。
样例 3
见下发压缩包中 activation3.in 与 activation3.ans。
该样例符合测试点 3∼4 的限制。
样例 4
见下发压缩包中 activation4.in 与 activation4.ans。
该样例符合测试点 5∼7 的限制。
说明
数据规模与约定
| 测试点 |
n≤ |
ai,j≤ |
特殊性质 |
| 1∼2 |
10 |
104 |
/ |
| 3∼4 |
无特殊限制 |
A |
| 5∼7 |
/ |
| 8∼10 |
无特殊限制 |
- 性质 A:所有 ai,j 初始均相等。
对于 100% 的数据,有 2≤n≤3×103,1≤ai,j≤106。