首页 > 其他 > 详细

【清华集训2014】玛里苟斯

时间:2019-09-13 00:31:57      阅读:110      评论:0      收藏:0      [点我收藏+]

看到这道题,然后便联想到了数位DP什么的……接着发现了答案在一个界内,然后就想着暴力了。

首先如果对每一位都设一个变量的话,根据插板法,最多只能有1e7个项对答案有贡献,和答案在一个界内这个条件组合起来,这启发我们去想暴力。

首先非基变量是没有用的,考虑它们的选和不选,最后都要除掉。

所以只有基变量有贡献。

显然基变量越多跑的越慢,这个时候设基变量有 \(b\) 个,很明显可以得到答案的一个粗略的下界

\[ \frac{\sum_{i=0}^{2^{b-1}} i^k}{2^{b-1}} \]

首先上面是一个自然幂数前缀和,显然是一个 \(k+1\) 项的多项式,忽略常数带来的影响,除掉分母,令 \(x = 2^b\),可得

\[x ^ k \le 2^{63} \]

也就是说,$ b \leq \log_2 \sqrt[k]{2^{63}} $,易得 \(k \geq 3\) 的时候是可以暴力枚举基的。

那么只剩下 \(k = 1\)\(2\) 了。

考虑 \(k = 1\),只要按位考虑贡献即可。

考虑 \(k = 2\),对于平方,只是同一种方案对每两个位的值进行乘积后求和。所以需要同时考虑两位,分别考虑这两位是 \(0\) 还是 \(1\),然后再考虑解数。

所以还是一道简单题。

但是我还没写……写了就补上代码,顺便哪里说错了会改

【清华集训2014】玛里苟斯

原文:https://www.cnblogs.com/daklqw/p/11515486.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!