func divisorSubstrings(num int, k int) int {
str := strconv.Itoa(num)
curNum := 0
ans := 0
mul := math.Pow(10, float64(k - 1))
for i, x := range str {
curNum += int(x - '0')
if i < k - 1 {
curNum *= 10
continue
}
if curNum != 0 && num % curNum == 0 {
ans ++
}
curNum -= int(str[i - k + 1] - '0') * int(mul)
curNum *= 10
}
return ans
}