LeetCode 1400, Medium. Topics: Hash Table, String, Greedy, Counting. View on LeetCode.
Generate this problem as a practice environment: tested reference solution, 22 parametrized pytest cases, and a playground notebook:
Problem
Given a string s and an integer k, return true if you can use all the characters in s to construct non-empty k palindrome strings or false otherwise.
Examples
Explanation: You can construct two palindromes using all characters in s. Some possible constructions "anna" + "elble", "anbna" + "elle", "anellena" + "b".
Explanation: It is impossible to construct 3 palindromes using all the characters of s.
Explanation: The only possible solution is to put each character in a separate string.
Constraints
1 <= s.length <= 10^5
s consists of lowercase English letters.
1 <= k <= 10^5
Solution
Reference implementation from solution.py on GitHub, full suite in test_solution.py:
Complexity
NeetCode All. Last modified on September 7, 2026