首页 > 其他分享 >丢弃奇数位置上的元素

丢弃奇数位置上的元素

时间:2024-07-05 11:41:52浏览次数:13  
标签:位置 数字 丢弃 二进制 max 元素 奇数

丢弃奇数位置上的元素

题目描述

给定 [1, n] 上的连续数字,每次去掉奇数位置上的数,当最后只剩一个数字时,这个数字是多少。

题解

img

如图所示:

将每个数字转换成二进制表示,可以发现,在第 i 轮删掉的数字,都是在二进制表示中从右->左,第 i 个位置为 1 的数字。因此,留下来的数字,肯定是从左到右,10000... 这样的 二进制数,因为如果低位有 1 的话,在第 i 轮之后就会被删除。
对于 [1, n] 这些数,满足这样的数字为 2^k <= n 中的 k 取最大值时,能得到的数字 2^max_k。

例如当 n = 7 时, max_k = 2;
例如当 n = 8 时, max_k = 3;

max_k = log2(n)

标签:位置,数字,丢弃,二进制,max,元素,奇数
From: https://www.cnblogs.com/qwerty-ll/p/18285461

相关文章

  • 【34. 在排序数组中查找元素的第一个和最后一个位置】
    题目:给你一个按照非递减顺序排列的整数数组nums,和一个目标值target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值target,返回[-1,-1]。你必须设计并实现时间复杂度为O(logn)的算法解决此问题。示例1:输入:nums=[5,7,7,8,8,10],t......
  • 使用 Tampermonkey 在页面加载完5秒后监听特定页面元素的点击事件并修改 API 返回的数
    示例 //==UserScript==//@nameNewUserscript//@namespacehttp://tampermonkey.net///@version2024-07-04//@descriptiontrytotakeovertheworld!//@authorYou//@matchhttps://a.x.com/*//@iconhttps://www.......
  • 点击事件不生效选择不到,元素被遮挡点击不起作用
    解决方案:两种方案:假设:外层遮挡的类名为:outer,被遮挡的类名为:Inner。1:在不破坏原有样式的基础上增加position:relative;然后z-index控制谁在上面即可.outer{ position:relative;z-index:1;}.Inner{ position:relative;z-index:2;}2.如果点击事件还不......
  • Python基础小知识问答系列-列表元素次数统计
    1.问题:    怎样统计列表中元素出现次数?    怎样获得列表中元素出现次数排在前n的元素?    怎样汇总两个列表中元素出现次数的信息?2.解决方法:    使用collections模块中的Counter函数。示例:importcollectionsdemo_list=["张共","......
  • HarmonyOS Next开发学习手册——共享元素转场
    共享元素转场是一种界面切换时对相同或者相似的两个元素做的一种位置和大小匹配的过渡动画效果,也称一镜到底动效。如下例所示,在点击图片后,该图片消失,同时在另一个位置出现新的图片,二者之间内容相同,可以对它们添加一镜到底动效。左图为不添加一镜到底动效的效果,右图为添加一......
  • Day1| 704. 二分查找 &27. 移除元素
    704.二分查找题目链接:https://leetcode.cn/problems/binary-search/description/思路:切记二分查找要基于排序好的数组或者数据,否则二分查找必不能使用!!!!!!!!!双指针写最简单,一个头指针从0开始,一个尾指针从数组长度-1开始,中间指针是头+尾/2,每次比较头尾中间指针的值......
  • 代码随想录算法训练营第一天 | 704. 二分查找、27. 移除元素
    704.二分查找这个之前有写过,最重要的就是把握住要去搜索的区间的形式,包括左闭右闭以及左闭右开两种classSolution{publicintsearch(int[]nums,inttarget){intleft=0,right=nums.length;while(left<right){//左闭右开的版本,结果存储......
  • laravel 数组元素按中文排序
    1、按英文排序$r=[['color'=>'b','color_zh'=>'波'],['color'=>'c','color_zh'=>'吃'],['color'=>'a','color_zh'=>'啊......
  • MyBatis2(MyBatis基础配置 动态代理 映射器 select 元素 insert 元素 update 元素和del
    目录一、MyBatis基础配置1.MyBatis配置文件2.<configuration>元素3.<enviroments>元素4.<properties>元素5.<typeAliases>元素6.<mappers>元素二、动态代理三、映射器1.映射器与接口2. 映射器的引入 3.映射器的组成 四、select元素参数传递多......
  • 数组-移除元素
    移除元素移除元素(leetcode27)varremoveElement=function(nums,val){constn=nums.length;letleft=0;for(letright=0;right<n;right++){if(nums[right]!==val){nums[left]=nums[right];left++......