题解:P14074 [GESP202509 五级] 有趣的数字和

news/2025/10/4 20:30:59/文章来源:https://www.cnblogs.com/dongdongmao/p/19125902

感觉这题真的不止黄(可能是我太菜了<(_ _)>

这道题会让我们联想到数位dp(其实没有多少关系(@_@)

这里还是借用的老师的思路

计算l-r之间有趣数字的个数,也就是0-r之间有趣数字的个数减去0-(l-1)之间有趣数字的个数

我们想想怎么计算从0~x之间一共有多少个有趣数字

另外 30% 的测试点,保证 l=1 并且 r=2^k −1,其中 k 是大于 1 的正整数。

题目中的这个有提示意义的数据告诉我们,2^k-1可以直接计算(或推出来), 这样我们就可以试着将数拆成类似于2^k-1的形式

like this
博客园图片

代码放上,如果有什么问题记得@我

https://www.luogu.com.cn/discuss/1165743
还有我关于这道题有些问题,希望大佬解答QWQ

#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=31;
int l,r;
LL f[N][2],g[N][2],c[N][N];void init(){for(int i=0;i<N;i++){for(int j=0;j<=i;j++){if(j)c[i][j]=c[i-1][j-1]+c[i-1][j];else c[i][j]=1;f[i][j&1]+=c[i][j];}}for(int i=0;i<N;i++){g[i][0]=f[i-1][1]*(1<<(i-1))+g[i-1][0]+g[i-1][1];g[i][1]=f[i-1][0]*(1<<(i-1))+g[i-1][1]+g[i-1][0];}
}LL count(int x,int op){if(x==0){return f[x][op];}int idx=0;for(int i=30;i>=0;i--){if((x>>i)&1){idx=i;break;}	} LL p=(1<<idx);return f[idx][op]+count(x-p,op^1);
}LL solve(int x,int op){	
//	cout<<x<<"\n";LL res=0;int idx=-1;for(int i=30;i>=0;i--){if((x>>i)&1){idx=i;break;}	} if(idx==-1){return 0;}LL p=(1<<idx);res=g[idx][op]+p*count(x-p,op^1)+solve(x-p,op^1);return res;
}int main(){init();cin>>l>>r;cout<<solve(r,1)-solve(l-1,1);//1 奇数  0  偶数 return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/927522.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

完整教程:数据结构从入门到实战————栈

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

解码Huffman 编码与 Huffman 树

为什么需要 Huffman 编码?—— 从 “编码浪费” 说起 在数据通信或存储中,我们需要将字符转换成二进制码(如 ASCII 码)。但常规编码(如 ASCII)存在一个问题:无论字符出现频率高低,都用相同长度的编码(比如 AS…

『回忆录』初三来高中的半学期

搬运自洛谷小号。看到过去的自己莫名地想哭。前情摘要:CSP2023S 90 分有关考试 估计在 560 左右,算是很差的。 语文:[80,100] 数学:[105,114] 英语:127 物理:[62,64] 化学:[87,88] 生物:97 总分:[560,580]目标…

怎么维护好网站.net网站 还原数据库备份

数据中台的定义 在云开发中&#xff0c;数据中台是一个综合性的数据管理和服务平台&#xff0c;它集成了数据管理、数据治理、数据服务等多个功能&#xff0c;并基于云计算技术架构而建立。数据中台的核心目标是为企业提供稳定、高效、安全的数据支持和服务&#xff0c;进而推…

10.1 容器云部署准备(一) - 实践

10.1 容器云部署准备(一) - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco&…

企业网站必须备案吗h5页面可以跳转到小程序吗

思路&#xff1a; 需求1&#xff1a;检测用户输入的字数 注册input事件 将输入文本长度赋值给对应的数值 需求2&#xff1a;输入不能为空 点击按钮之后判断 如果输入为空&#xff0c;则提示不能输入为空&#xff0c;并直接return 为了防止无意义的一些输入&#xff0c;利用字符…

常州网站建设怎么样网站之家查询

这里给大家分享我在网上总结出来的一些知识&#xff0c;希望对大家有所帮助 前言 在前端开发中&#xff0c;有时候一些业务场景中&#xff0c;我们有需求要去实现excel的预览和打印功能&#xff0c;本文在vue3中如何实现Excel文件的预览和打印。 预览excel 关于实现excel文档在…

dede可以做商城网站吗一个新产品怎么推广

作者&#xff1a;Liuweifei 硬盘结构 1.硬盘结构 ​ 硬盘大致由盘片、读写头&#xff08;磁头&#xff09;、马达、底座、电路板等几大项组合而成。 ​ 硬盘的每一个盘片都有两个盘面&#xff0c;即上、下盘面。每个盘面都能利用&#xff0c;都可以存储数据&#xff0c;成为…

建筑工程招聘网站哪个好建站模板招募设计师

102. 最佳牛围栏 农夫约翰的农场由N块田地组成&#xff0c;每块地里都有一定数量的牛,其数量不会少于1头&#xff0c;也不会超过2000头。 约翰希望用围栏将一部分连续的田地围起来&#xff0c;并使得围起来的区域内每块地包含的牛的数量的平均值达到最大。 围起区域内至少需要包…

关于缓冲区以及输出方式

先有个前置知识:CPU 速度差不多是 I/O 设备的 \(10^6\) 倍这样 CPU 访问内存的顺序:L1 缓存 → L2 缓存 → L3 缓存 → 主内存 → I/O设备 系统调用发生在「主内存 → I/O 设备」这一步中 缓冲区通常设置在主内存中为…

asp网站可运行jsp吗wordpress接入安卓

在计算机使用过程中&#xff0c;我们可能会遇到一些错误提示&#xff0c;其中“找不到msvcr120.dll”就是常见的一种。那么&#xff0c;找不到msvcr120.dll是什么意思呢&#xff1f; 一&#xff0c;msvcr120.dll文件概述 msvcr120.dll 是 Microsoft Visual C Redistributable …

详细介绍:2025三掌柜赠书活动第三十五期 AI辅助React Web应用开发实践:基于React 19和GitHub Copilot

详细介绍:2025三掌柜赠书活动第三十五期 AI辅助React Web应用开发实践:基于React 19和GitHub Copilot2025-10-04 20:11 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: norm…

网站推广设计制作专做女装拿货的网站

目录 1、向量点乘 2、相似度计算举例 3、QKV分析 4、整体流程 (1) 首先从词向量到Q、K、V (2) 计算Q*&#xff08;K的转置&#xff09;&#xff0c;并归一化之后进行softmax (3) 使用刚得到的权重矩阵&#xff0c;与V相乘&#xff0c;计算加权求和。 5、多头注意力 上面…

深圳建设银行宝安支行网站市场营销在线课程

1. JVM快速入门 从面试开始&#xff1a; 请谈谈你对JVM 的理解&#xff1f;java8 的虚拟机有什么更新&#xff1f; 什么是OOM &#xff1f;什么是StackOverflowError&#xff1f;有哪些方法分析&#xff1f; JVM 的常用参数调优你知道哪些&#xff1f; 内存快照抓取和MAT分…

coduck模拟赛一 补题报告 - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

RippleNet: Propagating User Preferences on the Knowledge Graph for Recommender Systems

1.知识图谱嵌入的基本过程,为什么难以直观有效表达项目间的关系 1.1基本过程(知识图谱嵌入)构建三元组: 将知识图谱表示为(头实体h, 关系r, 尾实体t)集合。向量化建模: 为每个实体、关系分配可学习的向量/矩阵,常见…

特地拎出来的总结

这篇总结不太一样,为了纪念和我爸喋喋不休吵了近3h的时间和教训,用Deepseek共同完成 : 题目 T674176 T2-任务task 题目描述 时间限制: 2.0 秒 空间限制: 512 MiB 有 \(n\) 个任务,第 \(i\) 个任务需要占据 \([l_…

在线做漫画的网站wordpress多用户评论

文献计量学是指用数学和统计学的方法&#xff0c;定量地分析一切知识载体的交叉科学。它是集数学、统计学、文献学为一体&#xff0c;注重量化的综合性知识体系。特别是&#xff0c;信息可视化技术手段和方法的运用&#xff0c;可直观的展示主题的研究发展历程、研究现状、研究…

漏洞赏金计划的困境:i915漏洞与ChromeOS、Intel赏金项目剖析

本文深入探讨了漏洞赏金计划存在的系统性问题,通过作者亲身经历的i915驱动漏洞案例,揭示了Google和Intel在处理安全漏洞报告过程中的沟通不畅、缺乏透明度等问题,并分析了漏洞赏金计划中权力失衡的根本原因。漏洞赏…

wordpress站名在哪改项目协同管理平台

在 Unix 环境下&#xff0c;" 寄存器需要 xterm-clipboard feature 的 VIM 软件才能使用&#xff0c;具有这个 feature 的 VIM 可以安装 vim-gtk&#xff08;包含gvim和vim&#xff09;&#xff0c;使用 gvim 可以正常调用 " 寄存器。