当前位置: 首页 > news >正文

P4317 花神的数论题

P4317 花神的数论题

大意

\(\prod_{i = 1} ^ k \text{pop_count(i)}\) 的答案。
\(k \le 10 ^ 15\)

思路

由于此题的 \(k\) 较大,且与二进制有关,我们求的又是 \(1 \sim k\) 的答案,我们不妨想想数位 DP 的实现方式。

很显然的地方就是我们可以把 \(k\) 二进制拆分,拆成 01 串,然后我们要统计所有在二进制下的 01 串中,其十进制表示 \(\le k\) 的,然后把这些合法串的 1 的个数相乘。

那么我们知道,第一要保证的是大小 \(\le k\),第二是保证记录 \(1\) 的个数。所以数位 DP 的思路就出来了,我们定义 \(f[pos][sum][lim]\) 表示在第 \(pos\) 位,前面的 \(1\) 的个数为 \(sum\),后面在是否满足限制 \(lim\) 的前提下后面可能形成的 \(1\) 的个数的乘积。

所以就直接做数位的 DP 即可。

代码

#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;const int MOD = 10000007;
#define ll long long
const int MAXN = 50;
int len = 0, a[MAXN];
ll k;
ll f[MAXN][200][2];ll dp(int pos, int sum, bool lim){if(pos == len){return max(sum, 1) % MOD;}if(~f[pos][sum][lim]){return f[pos][sum][lim] % MOD;}ll ans = 1;int maxx = lim ? a[pos] : 1;for(int i = 0;i <= maxx;i ++){ans = (ans * dp(pos + 1, sum + (i == 1), lim && (i == maxx))) % MOD;}return f[pos][sum][lim] = ans;
}ll solve(ll x){memset(f, -1, sizeof(f));len = 0;while(x){a[len ++] = x % 2;x /= 2;}reverse(a, a + len);return dp(0, 0, 1) % MOD;
}int main(){cin >> k;cout << solve(k) % MOD<< '\n';return 0;
}
http://www.jsqmd.com/news/342816/

相关文章:

  • 2026网络同步时钟系统厂家推荐榜高精度多场景适配优选指南 - 深度智识库
  • 模板元编程应用场景
  • 基于前述文章的完整MES对接代码示例,覆盖了汽车总装线场景下最常用的几种对接方式
  • 2026网络同步时钟系统厂家推荐榜:五家实力企业技术解析与选型指南 - 深度智识库
  • 布隆过滤器:原理、特性与 Python 实现
  • 流形、维度与旋转群
  • Elasticsearch 索引设计详解
  • 多项式板子
  • 内存破坏调试技巧
  • 2026年学校标准化考场电子时钟五大厂家深度对比:西安伟洲电子领跑行业 - 深度智识库
  • 3-1 音程和弦
  • 单纯形法入门笔记
  • 基于cxf-webservice的OA与OB系统对接方案实例研究
  • C++并发编程学习(二)—— 线程所有权和管控
  • 2026医院子母钟系统供应商选哪家?五大品牌综合评估与推荐 - 深度智识库
  • 基于深度学习的玉米虫害检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
  • bazel报错:@com_google_absl//absl/container: Unable to load file @rules_cc//cc:cc_library.bzl
  • 2026学校标准化考场电子时钟五大厂家对比分析首选推荐指南 - 深度智识库
  • 实用指南:django rest framework:从零开始搭建RESTful API
  • 2026医院子母钟系统供应商推荐:西安伟洲电子科技引领精准时间同步新标准 - 深度智识库
  • 6.8 Bookinfo故障排查实战:服务调用失败、性能瓶颈诊断技巧
  • 【金融项目实战】3_接口测试 _提取测试点和编写用例
  • 设计副业技能匹配工具,输入自身技能,匹配需求副业,标注技能提升方向,帮助从业者发挥优势,提升副业竞争力。
  • 制作小商家营销方案生成工具,输入店铺类型及目标人群,生成适配营销方案(线上/线下),标注执行步骤,帮小商家低成本获客。
  • [信息论与编码理论专题-18]:信息熵 = 一件事的“不可预测程度”,并且用数学度量
  • 【ACM模式】队列操作
  • 2026年北斗NTP网络时间服务器厂家TOP5推荐:精准授时助力行业数字化升级 - 深度智识库
  • 我花了一天时间,拆了一下 OpenTeleDB 的 XStore,到底解决了 PG 的哪根老筋?
  • AI代理:AI原生应用领域的关键驱动力
  • 使用darknet detector train cfg/voc.data cfg/yolov3-voc.cfg darknet53.conv.74训练图片是怎么生成权重文件的,怎么定义权重文件名?