2269. Find the K-Beauty of a Number LeetCode Solution
In this guide, you will get 2269. Find the K-Beauty of a Number LeetCode Solution with the best time and space complexity. The solution to Find the K-Beauty of a Number problem is provided in various programming languages like C++, Java, and Python. This will be helpful for you if you are preparing for placements, hackathons, interviews, or practice purposes. The solutions provided here are very easy to follow and include detailed explanations.
Table of Contents
- Problem Statement
- Complexity Analysis
- Find the K-Beauty of a Number solution in C++
- Find the K-Beauty of a Number solution in Java
- Find the K-Beauty of a Number solution in Python
- Additional Resources

Problem Statement of Find the K-Beauty of a Number
The k-beauty of an integer num is defined as the number of substrings of num when it is read as a string that meet the following conditions:
It has a length of k.
It is a divisor of num.
Given integers num and k, return the k-beauty of num.
Note:
Leading zeros are allowed.
0 is not a divisor of any value.
A substring is a contiguous sequence of characters in a string.
Example 1:
Input: num = 240, k = 2
Output: 2
Explanation: The following are the substrings of num of length k:
– “24” from “240”: 24 is a divisor of 240.
– “40” from “240”: 40 is a divisor of 240.
Therefore, the k-beauty is 2.
Example 2:
Input: num = 430043, k = 2
Output: 2
Explanation: The following are the substrings of num of length k:
– “43” from “430043”: 43 is a divisor of 430043.
– “30” from “430043”: 30 is not a divisor of 430043.
– “00” from “430043”: 0 is not a divisor of 430043.
– “04” from “430043”: 4 is not a divisor of 430043.
– “43” from “430043”: 43 is a divisor of 430043.
Therefore, the k-beauty is 2.
Constraints:
1 <= num <= 109
1 <= k <= num.length (taking num as a string)
Complexity Analysis
- Time Complexity: O(n)
- Space Complexity: O(k)
2269. Find the K-Beauty of a Number LeetCode Solution in C++
class Solution {
public:
int divisorSubstrings(int num, int k) {
const string s = to_string(num);
int ans = 0;
for (int i = 0; i + k <= s.length(); ++i) {
const int x = stoi(s.substr(i, k));
if (x != 0 && num % x == 0)
++ans;
}
return ans;
}
};
/* code provided by PROGIEZ */
2269. Find the K-Beauty of a Number LeetCode Solution in Java
class Solution {
public int divisorSubstrings(int num, int k) {
final String s = String.valueOf(num);
int ans = 0;
for (int i = 0; i + k <= s.length(); ++i) {
final int x = Integer.parseInt(s.substring(i, i + k));
if (x != 0 && num % x == 0)
++ans;
}
return ans;
}
}
// code provided by PROGIEZ
2269. Find the K-Beauty of a Number LeetCode Solution in Python
class Solution:
def divisorSubstrings(self, num: int, k: int) -> int:
s = str(num)
ans = 0
for i in range(len(s) - k + 1):
x = int(s[i:i + k])
if x != 0 and num % x == 0:
ans += 1
return ans
# code by PROGIEZ
Additional Resources
- Explore all LeetCode problem solutions at Progiez here
- Explore all problems on LeetCode website here
Happy Coding! Keep following PROGIEZ for more updates and solutions.