F - (Divisors Counter)^{-1}

2 secs 1024 MB
uni_kakurenbo

マルチテストについての説明はこちら (サンプル問題を確認されていない方のみお読みください。)


配点:

問題文


個の非負整数 と空の列 があります.

また,次の操作を何度でも行えます:

  • の末尾に好きな正整数を追加する.

さらに,正整数 に対して を次のように定めます:

  • の(正の)約数であるような の個数
    • より形式的には,任意の正整数 について が満たされる.
    • なお なる整数 に対して 番目の要素を と表す.

なる任意の整数 について が満たされるようにすることが目標です.

この目標が達成可能か判定し,可能な場合はそのために必要な操作回数の最小値を求めてください.

制約


  • 入力はすべて整数

入力


各テストケースの入力は,それぞれ以下の形式で与えられる:


出力


操作によって目標が達成できるならば,それを達成するために必要な操作回数の最小値を出力せよ.
操作によって目標が達成できないならば,-1 と出力せよ.

サンプル


入力例1
1
5
2 2 3 3 3
出力例1
5

たとえば とすると,条件が満たされます.
回未満の操作で目標を達成することはできないので, が答えです.


入力例2
2
5
4 3 2 1 0
4
0 1 0 1
出力例2
-1
1

提出


Go (1.14)