首页 > 其他 > 详细

NOIP2018 11.04 比赛 总结

时间:2018-11-04 15:15:13      阅读:129      评论:0      收藏:0      [点我收藏+]

T1

荒诞(absurdity)

题目都是花言巧语,代码就几行。。发现性质,字典序就是原序。

所以直接 i^2 求和就行了,这题数据水,可以直接 O(n),

如果数据大了可以 O(1) ,有公式的:

ans=(n*(n+1)*(2n+1))/6 

 

T2
失意(failure)

要是交最大。

dalao们有用堆,而我用树状数组。a[l]+1   a[r+1]-1

用 L、R 记录当前最大合法区间。

维护到 p 为止有多少区间覆盖,若大于等于m 则符合。

数据大了注意要离散化唔哦

 

T3

快速幂 + 容斥。。

因为有 K 天,所以要 ksm。

用 f[i] 记录包含 i 这个状态的方案数。

根据容斥原理:当满足 i 个人时若 i 为奇数则对答案贡献为正,否则为负。

推荐一句巧妙的位运算:for (int j=x; j; j=(j-1)&x) f[j]++;   

巧妙地将包含于 x 的所有状态全部弄出来了。。

 

NOIP2018 11.04 比赛 总结

原文:https://www.cnblogs.com/Frank-King/p/9904001.html

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