diff --git a/kt/find-the-count-of-good-integers.kt b/kt/find-the-count-of-good-integers.kt index 20da07e..5cc37af 100644 --- a/kt/find-the-count-of-good-integers.kt +++ b/kt/find-the-count-of-good-integers.kt @@ -22,17 +22,17 @@ class Solution { val base = (1..(n - 1) / 2).fold(1) { acc, _ -> acc * 10 } val skip = n.and(1) - for (i in base..10 * base - 1) { - var s = i.toString() - s += StringBuilder(s).reverse().substring(skip) - - val palindrome = s.toLong() - if (palindrome % k == 0L) { - val chars = s.toCharArray() + (base..10 * base - 1) + .map { i -> + var s = i.toString() + s += StringBuilder(s).reverse().substring(skip) + s to s.toLong() + }.filter { (_, it) -> it % k == 0L } + .forEach { (it, _) -> + val chars = it.toCharArray() chars.sort() add(String(chars)) } - } } fun countGoodIntegers(