#abc158e. [abc158_e]Divisible Substring
[abc158_e]Divisible Substring
問題文
高橋君は 0
から 9
までの数字から成る長さ の文字列 を持っています。
素数 が好きな高橋君は、 の空でない連続する部分文字列 個のうち、十進表記の整数と見なした際に で割り切れるものの個数を知りたくなりました。
ただし部分文字列は先頭が 0
であっても良いものとし、文字列として等しい場合や、整数と見なした際に等しい場合も、部分文字列の 内の位置で区別します。
高橋君のためにこの個数を計算してください。
制約
- は数字から成る
- は素数である
入力
入力は以下の形式で標準入力から与えられる。
出力
の空でない連続する部分文字列であって、十進表記の整数と見なした際に で割り切れるものの個数を出力せよ。
入力例 1
出力例 1
= 3543
です。 の空でない連続する部分文字列は次の 個があります。
-
3
は で割り切れる。 -
35
は で割り切れない。 -
354
は で割り切れる。 -
3543
は で割り切れる。 -
5
は で割り切れない。 -
54
は で割り切れる。 -
543
は で割り切れる。 -
4
は で割り切れない。 -
43
は で割り切れない。 -
3
は で割り切れる。
このうち で割り切れるものは 個であるので、 を出力してください。
入力例 2
出力例 2
= 2020
です。 の空でない連続する部分文字列は 個ありますが、その全てが で割り切れるので を出力してください。
先頭が 0
である部分文字列も許容されることに注意してください。