CF908G&LOJ6697口胡
为什么我从ACAM做到了数位DP啊
考虑枚举前缀顶着最高位和后缀没有顶着的最高位。
考虑计算一个数对答案的贡献。统计 \(t\) 的出现次数记录到 \(c[t]\) 中。
贡献就是 \(\sum_{i=0}^{9}((\sum_{x=0}^{\sum_{j=i}^{9}c[j]-1}i\times10^{x})-(\sum_{x=0}^{\sum_{j=i+1}^{9}c[j]-1}i\times 10^{x}))\)。
\]
\]
\]
\]
我们只需要计算左边那一车,最后除以 \(9\) 就好了。
然后我们注意到枚举前缀相当于强制你的 \(c[i]\) 不小于某个值。我们可以直接对 \(c\) 做后缀和。
因为只有 \(O(n)\) 个前缀需要被计算,而且 \(n\) 的范围支持 \(O(n^2)\),所以我们考虑 \(O(n)\) 算这个东西。
设 \(c\) 的后缀和数组为 \(t\),\(dp[c][n]\) 表示 \(t[c]=n\) 且只考虑了 \([0,c]\) 这几个数码的权值。
容易使用前缀和优化 DP 计算。最后取 \(\sum_{i=0}^{n}dp[9][i]\) 即可。
复杂度 \(O(10n^2)\)。
考虑复杂点儿的情况,计算 \(\sum i\times f(i)\) 而不是 \(\sum f(i)\)。
注意到我们只是给一个数带上了权值。
仍然考虑上述过程。假设固定前缀后枚举出来的后缀集合为 \(P\),枚举出来的前缀代表的数为 \(t\),那么我们计算的就是 \(\sum_{g\in P}(t+g)f(t+g)=\sum_{g\in P}t\times f(t+g)+g\times f(t+g)\)。
我们刚才计算的是 \(\sum_{g\in P}f(t+g)\),所以只需要考虑如何计算 \(\sum_{g\in P}g\times f(t+g)\) 即可。
仍然考虑对每一个 \(c\) 数组计算答案。带有幂的部分贡献和上面是一样的只需要将 \(10\) 替换成 \(B\),\(9\) 替换成 \(B-1\) 即可。考虑带有前面的 \(g\) 如何计算。
考虑计算每一种数码对答案的贡献。首先将其他 \(B-1\) 中数码全部看成同一种颜色,只需要再乘上一个组合数来补上系数即可。
剩下的部分,考虑枚举某个位置出现了 \(i\),然后剩下的部分随便乱填。
\]
\]
\]
\]
剩下的部分还不会,鸽了鸽了(
CF908G&LOJ6697口胡的更多相关文章
- Topcoder口胡记 SRM 562 Div 1 ~ SRM 599 Div 1
据说做TC题有助于提高知识水平? :) 传送门:https://284914869.github.io/AEoj/index.html 转载请注明链接:http://www.cnblogs.com/B ...
- 口胡FFT现场(没准就听懂了)&&FFT学习笔记
前言(不想听的可以跳到下面) OK.蒟蒻又来口胡了. 自从ZJOI2019上Day的数论课上的多项式听到懵逼了,所以我就下定决心要学好多项式.感觉自己以前学的多项式都是假的. 但是一直在咕咕,现在是中 ...
- BZOJ 口胡记录
最近实在是懒的不想打代码...好像口胡也算一种训练,那就口胡把. BZOJ 2243 染色(树链剖分) 首先树链剖分,然后记录下每个区间的左右端点颜色和当前区间的颜色段.再对每个节点维护一个tag标记 ...
- Atcoder/Topcoder 口胡记录
Atcoder/Topcoder 理论 AC Atcoder的❌游戏示范 兴致勃勃地打开一场 AGC 看 A 题,先 WA 一发,然后花了一年时间 Fix. 看 B 题,啥玩意?这能求? 睡觉觉. e ...
- NOIP2016考前做题(口胡)记录
NOIP以前可能会持续更新 写在前面 NOIP好像马上就要到了,感觉在校内训练里面经常被虐有一种要滚粗的感觉(雾.不管是普及组还是提高组,我都参加了好几年了,结果一个省一都没有,今年如果还没有的话感觉 ...
- 关于有向图走“无限次”后求概率/期望的口胡/【题解】HNCPC2019H 有向图
关于有向图走"无限次"后求概率/期望的口胡/[题解]HNCPC2019H 有向图 全是口胡 假了不管 讨论的都是图\(G=(V,E),|V|=n,|E|=m\)上的情况 " ...
- 「口胡题解」「CF965D」Single-use Stones
目录 题目 口胡题解 题目 有许多的青蛙要过河,可惜的是,青蛙根本跳不过河,他们最远只能跳 \(L\) 单位长度,而河宽 \(W\) 单位长度. 在河面上有一些石头,距离 \(i\) 远的地方有 \( ...
- PKUSC 2022 口胡题解
\(PKUSC\ 2022\)口胡题解 为了更好的在考试中拿分,我准备学习基础日麻知识(为什么每年都考麻将 啊啊啊) 首先\(STO\)吉老师\(ORZ,\)真的学到了好多 观察标签发现,这套题覆盖知 ...
- NOIP 口胡
因为没准备啥东西 这两天口胡一下近年 NOIP 的题 大概会一道不落?没什么很寄的考点主要是 2021 T1 报数 打一个 \(O(\log n)\) 查询 \(n\) 中是否有 \(7\),打一个类 ...
随机推荐
- mysql连接出错:ERROR 1040 (HY000): Too many connections
1.查看mysql的最大连接数:show variables like '%max_connections%'; 2. 查看服务器响应的最大连接数: 3. 设置最大连接数: set GLOBAL m ...
- XML 中如何输入回车换行
XML 中如何输入回车换行? XML 特殊字符: 下面的字符在 [XML]中被定义为 空白(whitespace)字符: 空格 ( ) Tab ( ) 回车 ( ) 换行 ( ) XML 中如何输入回 ...
- cocos命令生成apk
1. 配置好cocos命令中需要的andrid 环境命令 2. adt或许没有 zipalign.exe, 在生成 release版中需要这个文件来生成apk (路径D:\adt\sdk\tools) ...
- 控制器view生命周期
控制器View的生命周期方法:只要是控制器的生命周期方法,都是以view开头. 控制器View加载完成时调用- (void)viewDidLoad { [super viewDidLoad];} 控制 ...
- 转载_最值得阅读学习的10个C语言开源项目代码
"源代码面前,了无秘密",阅读优秀代码无疑是开发人员得以窥见软件堂奥而登堂入室的捷径.本文选取10个C语言优秀开源项目的代码作为范本,分别给予点评,免去东搜西罗之苦,点赞!那么问题 ...
- 还在做廉价的劳动力?部署PXE实现Kickstart无人值守安装
搭建PXE实现Kickstart无人值守安装 1.搭建PXE远程安装服务器 2.实现kicstart无人值守安装 1.PXE介绍及搭载: PXE是有Intel公司开发的网络引导技术,工作在Client ...
- 解决使用putty 连接Windows主机与Linux虚拟机出现提示network error:connection refused问题
使用putty 连接Windows主机与Linux虚拟机出现提示network error:connection refused的问题 问题描述: 主机与虚拟机可以互相ping通: 防火墙已经关闭 使 ...
- 4.Flink实时项目之数据拆分
1. 摘要 我们前面采集的日志数据已经保存到 Kafka 中,作为日志数据的 ODS 层,从 kafka 的ODS 层读取的日志数据分为 3 类, 页面日志.启动日志和曝光日志.这三类数据虽然都是用户 ...
- 通过修改注册表将右alt键映射为application键
通过修改注册表将右alt键映射为application键的方法有许多键盘没有APPLICATION(上下文菜单)键,本文将教您如何把右ALT键映射为apps键.1.映射请将以下注册表信息用记事本保存为 ...
- linux可以这样玩 之 杂乱无章的随笔(不定期更新)
文章目录 快速重命名 vim的进化 vim高亮当前行 vim列编辑 vim块编辑 vim行编辑 vim 中替换内容 vim保留当前已经编辑的内容,切换到其他用户继续编辑 修改服务的进程限制 CentO ...