博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hihoCoder挑战赛29
阅读量:5012 次
发布时间:2019-06-12

本文共 747 字,大约阅读时间需要 2 分钟。

好难,不会做。

1. 序列的值

其实读完题还不是很理解题意,后来看的题解。数据范围1e5,显然枚举所有的子序列是不可能的,然后考虑每一个元素对结果贡献,问题就变成这个数在那些序列里面对结果的贡献会增加。这个情况是,该数最高为1的位,前面的数的异或该位为0的子序列,加上这个数构成的子序列才是满足要求的,如果前面xor的结果相应位为1,加上这个数的xor结果是要变小的。然后考虑有多少种这种情况,记这个数前面该位为1的个数为a,该位为0的个数为b,这个数后面的个数为n - 1 - a - b, 然后结果就是前面该位为1的数取偶数个,该位为0的个数随便, 后面也是所有的子集,然后结果就是 2^(a - 1) * 2^b * 2 ^(n - 1 - a - b), 然后所有的数加起来就是最后的答案。

2.  快速乘法

题意就是一个数二进制表示,通过加减使得二进制表示中1的个数最小。

应该算原题吧: https://hihocoder.com/contest/hihointerview21/problem/3

我直接从这里抄的答案,就过了。

3. 太难,看题解,还需要fft这个东西,对我难度太大。

4. 不上升序列

看大家提交的速度很快,但是不会做。

http://codeforces.com/contest/13/problem/C

http://codeforces.com/contest/714/problem/E

跟这个题目是一致的,但是本题数据范围很大。

数据范围小的,可以采用n^2的dp,数据范围大的,只能采取优先队列, nlogn,这个做法是折线,拐点, 我不是很理解。

转载于:https://www.cnblogs.com/y119777/p/7097681.html

你可能感兴趣的文章
校外实习报告(九)
查看>>
android之android.intent.category.DEFAULT的用途和使用
查看>>
CAGradientLayer 透明渐变注意地方(原创)
查看>>
织梦DEDE多选项筛选_联动筛选功能的实现_二次开发
查看>>
iOS关于RunLoop和Timer
查看>>
SQL处理层次型数据的策略对比:Adjacency list vs. nested sets: MySQL【转载】
查看>>
已存在同名的数据库,或指定的文件无法打开或位于 UNC 共享目录中。
查看>>
MySQL的随机数函数rand()的使用技巧
查看>>
thymeleaf+bootstrap,onclick传参实现模态框中遇到的错误
查看>>
python字符串实战
查看>>
wyh的物品(二分)
查看>>
12: xlrd 处理Excel文件
查看>>
综合练习:词频统计
查看>>
中文url编码乱码问题归纳整理一
查看>>
Cesium应用篇:3控件(3)SelectionIndicator& InfoBox
查看>>
58. Length of Last Word(js)
查看>>
前端面试题汇总(持续更新...)
查看>>
如何成为F1车手?
查看>>
QT自定义消息
查看>>
Save (Not Permitted) Dialog Box
查看>>