問題

ユウキ君は彼の友達3人とランドソルトランプで大富豪がしたいです。
ランドソルトランプのデッキには上から11(と書かれたカード),22(と書かれたカード),…,NN(と書かれたカード)の順で合計NN枚のカードが入ってます。
(つまりN=4N=4の場合、上から順に11,22,33,4444枚のカードが入ってます。)

このまま配り始めると最後にカードを受け得とる花子さんが凄く有利なのでユウキ君はカードをMM回シャッフルしました。
ユウキ君はシャッフルの方法を一つしか知りません(以下、この方法を「シャッフル」と表記します)。
具体的には長さNN数列A=[A1,A2,...,An]A = [A1,A2, ... , An] が与えられた時、シャッフル毎に現在上からii番目にあるカードのシャッフル後の位置は上からAiAi番目となります。 (つまり、A=[1,2,4,3]A = [1, 2, 4, 3]の場合、デッキを初期状態から1回シャッフルするとデッキのカードは上から1,2,4,31,2,4,3となり、初期状態から2回シャッフルするとカードは上から 1,2,3,41,2,3,4になります。)

MM回のシャッフルを終えた結果、ユウキ君が顔を上げると花子さんが鬼のような目でユウキ君を睨んでいました。
このままでは怒られてしまうかもと思ったユウキ君は追加で何回かシャッフルをして、デッキを初期の状態(上から1,2,...,N1,2,...,N)に戻そうと考えました。

ユウキ君のために最小であと何回シャッフルすればデッキを初期の状態に戻せるかを出力してください。
何回シャッフルしても初期状態に戻せないのであれば、 代わりに1-1と出力してください。

制約

4N2×1044≦N≦2×10^4 (デッキの中のカードは最小で44枚、最大で20,00020,000枚)
NN44の倍数
0M1050≦M≦10^5 (ユウキ君はユウキ君式シャッフルを既に最小で00回、最大で100,000100,000回している)
数列AAには11からNNの数字が各一回ずつ出現する

入力

一行目には整数NN, MMが与えられる(NNはデッキ内のカードの枚数、MMは既にシャッフルした回数)
二行目には数列A=[A1,A2,...,An]A = [A1,A2, ... , An]が与えられる

出力

ユウキ君のために最小であと何回シャッフルすればデッキを初期の状態に戻せるかを出力してください。
何回シャッフルしても初期状態に戻せないのであれば、 代わりに1-1と出力してください。

サンプル

入力1
4 0
1 2 3 4
出力1
0

ユウキ君はシャッフルを一回もしてないので、カードは初期状態のままです。よって追加でシャッフルする必要はありません。

入力2
4 2
2 1 4 3
出力2
0

シャッフル一回目でカードは上から2,1,4,32,1,4,3となり、2回目で上から1,2,3,41,2,3,4に戻ります。
これは初期状態と同じなのでやはり追加でシャッフルする必要はありません。

入力3
4 2
3 1 2 4
出力3
1

シャッフル一回目でカードは上から2,3,1,42,3,1,4となり、2回目で上から3,1,2,43,1,2,4となります。
11回シャッフルすると1,2,3,41,2,3,4に戻るので、追加で必要な最小回数1を出力します。

提出


Go (1.21)