要把数组恰好分成若干组,每组 k 个相同的数。每个数必须用掉。
给定一个长度为 n 的整数数组 nums 和一个整数 k。
请判断能否将数组中的所有元素划分成若干组,使得每一组都恰好包含 k 个元素,并且同一组中的所有元素都完全相同。
数组中的每个元素必须恰好属于一个分组,不能遗漏,也不能重复使用。
如果能够完成这样的分组,输出 true;否则输出 false。
第一行输入两个整数 n 和 k,分别表示数组 nums 的长度以及每一组需要包含的元素数量。
第二行输入 n 个整数 numsi,表示数组中的各个元素,相邻整数之间用空格分隔。
1≤n≤105
1≤k≤n
−109≤numsi≤109
如果能够将数组中的所有元素划分成若干组,并且每组恰好包含 k 个相同的元素,输出 true。
否则输出 false。
输入
8 2
1 1 2 2 3 3 4 4
输出
true
说明
可以将数组划分为 4 组:
1,1
2,2
3,3
4,4
每一组都恰好包含 2 个相同的元素,因此输出 true。
输入
7 2
1 1 1 2 2 3 3
输出
false
说明
数字 1 一共出现了 3 次,无法将这 3 个数字 1 全部划分成每组恰好包含 2 个 1 的若干组。
因此无法完成分组,输出 false。
输入
12 3
5 5 5 2 2 2 5 5 5 7 7 7
输出
true
说明
数字 5 出现了 6 次,可以划分为 2 组,每组包含 3 个 5。
数字 2 出现了 3 次,可以划分为 1 组。
数字 7 出现了 3 次,可以划分为 1 组。
因此所有元素都可以按照要求完成分组,输出 true。
© CodeFun2000 · 使用条款
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册