有一个未解决的数学问题:是否每个非负整数在十进制表示下都是至少一个素数的子串?
如果一个正整数大于 1 且不能表示为两个更小的正整数的乘积,则称其为素数。如果整数 $a$ 可以通过删除整数 $b$ 的最高位和最低位零个或多个连续数字得到,则称 $a$ 是 $b$ 的子串。例如,123 是以下数字的子串:123, 56123, 123789, 50182312365, 41237912123。
给定两个整数 $l$ 和 $h$ 以及一个整数 $p$,你需要计算在第 $l$ 小的素数到第 $h$ 小的素数(包含两端)之间,有多少个素数包含等于 $p$ 的子串。我们感兴趣的子串可能包含有效的先导零,因此 $p$ 可能带有先导零。即使整数 $p$ 在一个素数中作为子串出现多次,该素数也只能被计数一次。
例如,考虑 $l = 1, h = 10$ 且 $p = 9$。这是在第 1 小的素数(2)到第 10 小的素数(29)之间搜索包含子串“9”的素数。共有 2 个这样的素数:19 和 29。
图片由 Marina Shemesh 提供
输入格式
第一行输入包含两个整数 $l$ 和 $h$ ($1 \le l \le h \le 10^5$)。第二行包含一个 1 到 6 位的数字序列,表示整数 $p$,它可能为零或带有有效的先导零。
输出格式
输出给定范围内包含 $p$ 作为子串的素数个数。
样例
样例输入 1
1 10 9
样例输出 1
2
样例输入 2
500 1000 43
样例输出 2
26
样例输入 3
1 1000 00
样例输出 3
10