码迷,mamicode.com
首页 > 其他好文 > 详细

1004-模拟赛

时间:2019-10-04 18:51:00      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:strong   莫队   dfs   二进制   class   离线   转换   不能   n+1   

A

显而易见,答案为
\[ C_n^m \]
反正这个显而易见我没看出来

试卷为小球,日期为盒子,那么我们就把问题转化成\(n\)个小球放入\(m\)个盒子中

等等,真的是m个盒子吗??

由题意可知,我们选择的,其实是m~n个球。由此,可以增加一个m+1号盒子,用来装剩下没有被选中的球。

这里,1~m号盒子是不能为空的,但是m+1号盒子是可以的,为了消除掉这个不同带来的影响,我们增加一个n+1号球,放在最后,保证无论如何m+1号盒子都不为空

插板法

\((n+1)-1\)个空格中放\((m+1)-1\)个板,将其隔为\(m+1\)个不为空的集合,所以答案为\(C_n^m\)

让我们来康康数据

id=1:

? 不说了,打组合数的表

id=2:

? 仔细想想,打个线性求逆的表+阶乘的表,乱搞操作一下

id=3:

? 模数很小,Lucas定理水过

id=7:

? n,m又大,模数又大,咋整啊

分段打表

? wtf???

? 跟id=2的情况类似,也是打阶乘表,不过\(10^9\)的表肯定打不下来,考虑到\(T\)很小,我们可以分段打表,在\(1\)~\(10^9\)中,每隔一百万就算一次阶乘(当然要%p)

举个例子:b[1]=1!,b[2]=1000000!,b[3]=2000000!,......

? 逆元直接用费马小定理(快速幂)

? 然后继续乱搞

B

树上莫队

deaf做法:dfs序+HH的项链(ojbk我已经忘了黄黄的项链是个什么玩意了,只记得这个名字以及分块做法洛谷开\(O_2\)会T80

dfs序把树上问题转换成线性

离线,按区间右端点排序(由于一个点对应了一段dfs序的区间)。然后左右指针移移移

对于每一个数字我们记录一个

C

由于题目要求,一定是从与起点相连的一个点出发,再回到与起点相连的另一个点

有三种做法:

1.将与起点相连的点提出来随机建新图

2.二进制分组

3.有规律的建新图

具体老板的题解:

容 易 发 现 暴 力 \(N^2logN\)枚 举 环 上 和 1相 邻 的 两 个 点 , 那 么 就 只 需 要 找 到 不 经 过 1号 点 , 乱 搞 两 点 间 的 最 短 路 即 可
考 虑 一 次 枚 举 多 对 , 将 一 号 点 拆 成 2 个 , 一 个 入 点 , 一 个 出 点 , 然 后 将 所 有 和 一 号 点 相 邻 的 点 分 成 两 个 集 合
其 中 一 个 集 合 连 到 出 点 , 入 点 连 到 另 一 集 合 , 那 么 跑 一 次 入 点 到 出 点 的 最 短 路 即 可 算 出 两 个 集 合 分 别 选 一 个 点 的 所 有 环
两 种 处 理 方 式 :

  1. 可 以 直 接 随 机 划 分 点 集 , 那 么 错 误 概 率\(75%\) , 多 随 机 几 次
  2. 按 照 二 进 制 分 组 , 依 次 枚 举 二 进 制 位 , 将 该 位 为 的 做 一 个 集 合 , 为 的 做 另 一 个 集 合 即 可 , 复 杂 度\(Nlog^2N\)

总结

A:不会,乱搞,骗分,结果Lucas的部分T了

B:不会,乱搞,暴力

C:哇,神仙题,最基础的都没看出来

我恨捆绑测试!!!!

就算不是捆绑测试我也没分

期望得分:\(60 + ? + 0 = 60~80\)

实际得分:\(45 + 20 + 0 = 65\)

今天学到的新知识:

1.分段打表

2.二进制分组

3.树上莫队

题外话

%出题人OBlack学长

神仙出神仙题给神仙做

三道题涉及10个方法,TQL.......

听说去年A题是什么都卡,一共涉及7个做法(我考试的时候就说为什么只有id=1/2/3/7,4 5 6去哪儿了,如今应该庆幸只出现了4种方法QwQ....)

1004-模拟赛

标签:strong   莫队   dfs   二进制   class   离线   转换   不能   n+1   

原文地址:https://www.cnblogs.com/qwqq/p/11622541.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!