#arc080d. [arc080_d]Prime Flip

[arc080_d]Prime Flip

题目描述

有无数张卡片,编号为 112233......。最初,卡片 x1x_1x2x_2......xNx_N 是正面朝上的,其余卡片是背面朝上的。

Snuke 可以重复执行以下操作:

  • 选择一个大于或等于 33 的质数 pp。然后,选择 pp 张连续的卡片并将它们全部翻面。

Snuke 的目标是使所有的卡片都背面朝上。找出实现这个目标所需的最小操作次数。

约束条件

  • 1N1001 ≤ N ≤ 100
  • 1x1<x2<...<xN1071 ≤ x_1 < x_2 < ... < x_N ≤ 10^7

输入格式

从标准输入中以以下格式给出输入:

NN x1x_1 x2x_2 ...... xNx_N

输出格式

打印实现目标所需的最小操作次数。


示例输入1

2
4 5

示例输出1

2

以下是实现两次操作达到目标的一种方法:

  • 选择 p=5p = 5,翻面卡片 1122334455
  • 选择 p=3p = 3,翻面卡片 112233

示例输入2

9
1 2 3 4 5 6 7 8 9

示例输出2

3

以下是实现三次操作达到目标的一种方法:

  • 选择 p=3p = 3,翻面卡片 112233
  • 选择 p=3p = 3,翻面卡片 445566
  • 选择 p=3p = 3,翻面卡片 778899

示例输入3

2
1 10000000

示例输出3

4