首页 > 其他分享 >每日一题 2024-1-25

每日一题 2024-1-25

时间:2024-01-25 19:56:41浏览次数:29  
标签:25 nums int 每日 整数 2024 二进制 复杂度 个置位

1.题目(1278原题链接

给你一个下标从 0 开始的整数数组 \(nums\) 和一个整数 \(k\) 。

请你用整数形式返回 \(nums\) 中的特定元素之 ,这些特定元素满足:其对应下标的二进制表示中恰存在 \(k\) 个置位。

整数的二进制表示中的 1 就是这个整数的 置位

例如,\(21\) 的二进制表示为 \(10101\) ,其中有 \(3\) 个置位。

示例 1:

输入:nums = [5,10,1,5,2], k = 1
输出:13
解释:下标的二进制表示是:
0 = 0002
1 = 0012
2 = 0102
3 = 0112
4 = 1002
下标 1、2 和 4 在其二进制表示中都存在 k = 1 个置位。
因此,答案为 nums[1] + nums[2] + nums[4] = 13 。

示例 2:

输入:nums = [4,3,2,1], k = 2
输出:1
解释:下标的二进制表示是:
0 = 002
1 = 012
2 = 102
3 = 112
只有下标 3 的二进制表示中存在 k = 2 个置位。
因此,答案为 nums[3] = 1 。

提示:

  • \(1 <= nums.length <= 1000\)
  • \(1 <= nums[i] <= 10^5\)
  • \(0 <= k <= 10\)

2.解题思路

枚举判断满足条件累加即可

3.c++代码

class Solution {
public:
    int sumIndicesWithKSetBits(vector<int>& nums, int k) {
        int ans=0;
        for(int i=0;i<nums.size();i++){
            if(__builtin_popcount(i)==k) ans+=nums[i];
        }
        return ans;
    }
};

4.复杂度分析

  • 时间复杂度:\(O(n)\)。
  • 空间复杂度:\(O(1)\)。

标签:25,nums,int,每日,整数,2024,二进制,复杂度,个置位
From: https://www.cnblogs.com/sunyafeiii/p/17988032

相关文章

  • 2024年1月Java项目开发指南9:密码加密存储
    提前声明:你不会写这加密算法没关系啊,你会用就行。要求就是:你可以不会写这个加密算法,但是你要知道加密流程,你要会用。@ServicepublicclassPasswordEncryptor{}很好,请在service层中创建一个名字为PasswordEncryptor的服务类,用来负责密码的加密。加密的方法有很多。简单一......
  • 2024年1月Java项目开发指南8:统一数据返回格式
    有时候返回一个字符串,有时候返回一串数字代码,有时候返回一个对象……不过怎么说,我们返回的内容往往具有三个1.消息代码code2.消息内容msg3.数据内容data接下来,我们要编写一个类,通过这个类,实现对所有返回内容进行格式化。先去添加个依赖 <dependency> <groupId>org.p......
  • 【每日GIS算法】(0)不同实体的构造
    本系列文章主要使用typescript手动实现GIS算法,其目的并不在于能够在正式生产中直接使用,而是可以通过对这些算法的实现,了解一些GIS方法的具体原理。本系列文章一定程度上与计算机图形学关系密切,也可以更好地了解图形学中相关知识点。本文作为本系列文章的第一篇,首先实现一些基础的......
  • 【每日GIS算法】(1)二维矢量的运算
    二维向量的基础运算主要有以下几种矢量的加法矢量的减法矢量的乘法矢量的除法矢量的模矢量的点乘矢量的叉乘矢量的归一化针对不同的场景,我们为二维矢量类提供对应的实例方法,但是由于这些实例方法会修改对象内部的数值,因此还提供对应的静态方法,在不改变原来的向量的情况......
  • THUWC & WC 2024 游记
    2024-01-25去重庆,要到宁波赶飞机,早上5:40起床,吃完早饭下楼等ZHY巨佬。ZHY巨佬昨天刚切了第六分块,还拿了个最优解(本来是rk2的,但rk1的用户被封禁了),准备在火车上颓题解。到宁波坐地铁到飞机场,在候机室看ZHY巨佬写题解。马上上飞机了FSB带着一堆初二巨佬过来(LYL,XY......
  • 2024年1月Java项目开发指南7:增删改查与接口测试
    我们之前,是从Controller层写到Service层,然后mapper层。接下来我们反过来,从mapper层写到Controller层两种方式都可以,你喜欢就行,甚至你先写service层也可以,全凭个人喜欢。在本文中,就不解释太多了,直接给出代码,对于关键地方,我会圈出来。如果有问题,可以直接在本文首发地址(博客园......
  • 25从零开始用Rust编写nginx,序列化之serde是如何工作的
    wmproxywmproxy已用Rust实现http/https代理,socks5代理,反向代理,静态文件服务器,四层TCP/UDP转发,内网穿透,后续将实现websocket代理等,会将实现过程分享出来,感兴趣的可以一起造个轮子项目地址国内:https://gitee.com/tickbh/wmproxygithub:https://github.com/tickbh/wmproxy序......
  • 2024年1月Java项目开发指南6:接口测试
    我们使用APIFox这款工具对接口进行测试。(你要是会其他的例如postman进行测试也行)https://apifox.com/新建一个项目,新增一个接口因为这个接口没有参数,所以无需填写参数,保存然后点击运行没有设置环境记得先去设置环境我们配置开发环境保存然后选择开发环境进行使用......
  • 2024年1月Java项目开发指南5:controller、service、mapper
    准备工作你知道什么是JSON吗?JSON是什么?格式是什么?有什么用?有什么优点?有什么缺点?请自己百度探索一下,对JSON做了个了解,如果你不知道什么是JSON的话,知道就免了,直接下一步吧。开始:项目目录结构先确保你已经创建了上图的那些文件夹。这都是我们需要用到。简单的做个介绍co......
  • 1.25
    不知不觉已经回家12天了 and 啥也没干 是时候重新计划一下了!!!距离开学还有正好一个月30天 今天腊月15 估计腊月二十九之前要除去几天 2526272829 五天+2天与朋友亲戚之类的聚会 7年后 正月1234515+1天走亲戚之类的活动730-14=16±2 也就是......