题目描述:
思路:
暴力枚举即可
题目描述在列表中的对应下标所对应的二进制的置位为k时,就加上这个下标对应的数。
思考对列表进行遍历,求出每个下标对应的置位个数,当满足题目要求时就加上该下标对应在列表中的值。
代码:
class Solution {
public int sumIndicesWithKSetBits(List<Integer> nums, int k) {
int res = 0;
for(int i = 0;i<nums.size();i++) {
if(bitCount(i) == k) {
res += nums.get(i);
}
}
return res;
}
//求下标对应的二进制中的置位数
public static int bitCount(int x) {
int cnt = 0;
while(x!=0) {
cnt += (x % 2);
x/=2;
}
return cnt;
}
}
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务