【luogu AT2382】A or...or B Problem(思维)
A or...or B Problem
题目链接:luogu AT2382
题目大意
给你一个区间,问里面的数你至少选一个,可以通过或得到多少个数。
思路
考虑一些东西,至少是二进制。
然后想一下会发现高位一样的都可以当 ,就只用从第一个不一样的地方开始看(如果一样就大小为 )
然后就分割成两个部分的数,考虑分开处理,分别是到 的和从 开始的
然后你会发现就是你往上(就是到 的)的是不会或到小于的值的,所以不会有多的。
然后另外一个自然就是会往上(因为或会让数变大,啊感性一下说变大),那因为你是连续的肯定要的 都可以出现或不出现只要你有,所以你出现过 的位都可以 任选,就也是一个二次方。
然后发现少了,会发现第一个部分(最高位是 )是可以融入到第二个部分里面的。
(因为你可以选 )使得变成第二部分的。
所以总的来说我们可以总结成若干个区间:
(往上)
( 是那个 的位置的)
然后区间求并即可。
(妈的说的好抽象看代码得了)
代码
__EOF__

本文作者:あおいSakura
本文链接:https://www.cnblogs.com/Sakura-TJH/p/luogu_AT2382.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/Sakura-TJH/p/luogu_AT2382.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现