尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

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

题解:P14074 [GESP202509 五级] 有趣的数字和
📅 发布时间:2026/6/19 7:55:18
博客园图片

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

这道题会让我们联想到数位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;
}

相关新闻

  • 关于缓冲区以及输出方式
  • 详细介绍:2025三掌柜赠书活动第三十五期 AI辅助React Web应用开发实践:基于React 19和GitHub Copilot
  • 冷僻模板整理

最新新闻

  • 2026年评价高的精密注塑/苏州注塑稳定供货厂家推荐 - 品牌宣传支持者
  • 2026年比较好的深圳 LED屏/LED屏工程/东莞LED屏可靠供应商推荐 - 品牌宣传支持者
  • LoadRunner 12.6社区版:性能测试入门与轻量级压测实战指南
  • C#软件加密5大漏洞与实战防护方案:从字符串硬编码到时间校验
  • RAMP技术:基于强化学习的自适应混合精度量化解析
  • 构建稳健的股票数据管道:从yfinance/AkShare到自动化更新

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号