2007-day2-fermat-prob


フェルマー方程式 (Fermat)



時間制限 : 0.5sec / スタック制限 : 64MB / メモリ制限 : 64MB


 素数p と自然数n1 が与えられたとき,

xn + ynzn (mod p)
をみたす整数x, y, z (0x, y, zp - 1) の組(x, y, z) の個数mを求めるプログラムを作れ.ここで,ab (mod p) とは,a - bp で割り切れることを意味する.

入力

 入力ファイルfermat.in1行目には素数p (p < 10000) が書かれている.2 行目には自然数n (1n10000) が書かれている.

出力

 標準出力に1 つの整数mのみからなる1 行を出力せよ.

入出力例

入力例1 出力例1
3
5
9

 x5 + y5z5 (mod 3) をみたす整数x, y, z (0x, y, z2) の組(x, y, z) は

(0,0,0), (0,1,1), (0,2,2), (1,0,1), (1,1,2), (1,2,0), (2,0,2), (2,1,0), (2,2,1)
9 個である.

入力例2 出力例2
19
21
487


 x21 + y21z21 (mod 19) をみたす整数x, y, z (0x, y, z18) の組(x, y, z) は487 個ある.

注意 採点に用いる入力データに対しては,mの値は231 よりも小さい.

コメント

名前:
コメント:
最終更新:2013年02月23日 16:29