atcoder#ABC285H. [ABC285Ex] Avoid Square Number
[ABC285Ex] Avoid Square Number
配点 : 点
問題文
整数 と長さ の数列 が与えられます。 長さ の正整数列であって、以下の条件を全て満たすものの総数を で割った余りを求めてください。
- どの要素も平方数でない
- 全要素の積が である
但し、
- は小さい方から 番目の素数を指すものとします。
- ある つの長さが等しい正整数列 について、 の 項目と の 項目が異なるような整数 が存在する時に限り、 と は異なる列であるとします。
制約
- 入力は全て整数
入力
入力は以下の形式で標準入力から与えられる。
出力
答えを整数として出力せよ。
3 2
3 2
15
全要素の積が となる長さ の数列は以下です。
- とその並べ替え ( 通り ) ... が平方数なので、条件を満たしません。
- とその並べ替え ( 通り ) ... が平方数なので、条件を満たしません。
- とその並べ替え ( 通り ) ... が平方数なので、条件を満たしません。
- とその並べ替え ( 通り ) ... が平方数なので、条件を満たしません。
- とその並べ替え ( 通り ) ... が平方数なので、条件を満たしません。
- とその並べ替え ( 通り ) ... が平方数なので、条件を満たしません。
- とその並べ替え ( 通り ) ... 条件を満たします。
- とその並べ替え ( 通り ) ... 条件を満たします。
- とその並べ替え ( 通り ) ... が平方数なので、条件を満たしません。
- とその並べ替え ( 通り ) ... 条件を満たします。
- とその並べ替え ( 通り ) ... 条件を満たします。
- とその並べ替え ( 通り ) ... が平方数なので、条件を満たしません。
よって、条件を満たす数列は 個です。
285 10
3141 5926 5358 9793 2384 6264 3383 279 5028 8419
672860525
で割った余りを求めることに注意してください。