一个数大约有 $O(\sqrt(n)/log^2(n))$ 个约数。

1. 一个棋盘,每个格子最开始都是白的。可以按一个格子,它马跳(日字跳)能到达的 $8$ 个格子反色(当前格不反色)。问有多少种方案使棋盘全部变黑。$n,m\le 200$。

先考虑翻转十字(上下左右四格)只有一排的做法:按 $2$ 个空 $2$ 个。

模 $4$ 余 $0$ 有一种方案(第一个和最后一个不选),余 $1$ 没有方案(有一端格子一定翻不了),余 $2$ 有 $1$ 种方案,余 $3$ 有 $2$ 种方案。

一通尝试后,发现这很像某道扫雷题(本篇T1)。

朴素暴力等于枚举左上角 $1*1$ 的情况……但很显然,这样有两个不确定的格子能影响左上角那一个格子的结果,因此就是龟速暴力了。

而 $2*2$ 的格子中,右上角和左下角那个格子都只被一个不确定的格子影响。这样就能能先确定第一行。然后由于只能在第二行用十字影响第一行的一个格子,因此反过来想,为了让第一行都变黑,第一行也就能唯一确定第二行。列同理。

其实枚举左上角 $2*2$ 的情况,整个棋盘就确定下来了。可以延续上面的思路证明。

由于左上角 $2*2$ 能确定前两行,把棋盘翻转过来想,它就能确定前两列。所以每一行前 $2$ 个都确定了,后面也全都确定了。

马字的话,观察它影响范围的一个角的部分,发现只要枚举左上角 $3*3$ 的情况就可以了。

2. 给你一些节点的度数,问你有多少种 $n$ 棵节点的无根树。均为无向边。

3. 给你一棵 $n$ 个点的树和无向图,现在请你给树编号,使它是无向图的一棵生成树。求总方案数。

树上dp+状态压缩

$f(i,j,s)$ 表示 $i$ 的父亲是 $j$,没有编号的点集是$s$。

4. $n(\le 50)$ 个篮子,$m(m\le 50)$ 种水果,$a_{i,j}\le 50$ 表示第 $i$ 个篮子中第 $j$ 种水果的数量。

现在有两种随机操作:

1.等概率选篮子子集;

2.混合后等概率选一个水果。

问每种水果的占比率。

第 $i$ 种水果的概率:

5. $n*n$ 的图形,挖掉若干个矩阵,使每行每列只能有一段连续挖掉的地方。求总方案数。

肯定是中间挖掉一块,且上、下端是单峰的。

所以 $f(i,j,k,x,y)$ 表示第 $i$ 列的上端为第 $j$ 行,下端为第 $k$ 行,$x,y$ 分别表示上、下端在上升还是下降/下降还是上升。

然后发现每次转移是 $n^2$ 的($j,k$两重枚举),时间爆了。比如:

$f(i,j,k,0,0) \space=\space \sum_{j'\le j}\sum_{k'\le k} f(i-1,j',k',0,0) \space+\space \space \sum_{j'\le j}\sum_{k'\gt k} f(i-1,j',k',0,1)$

发现是俩$sigma$套了起来,二维前缀和优化即可。

【2018.10.27】CXM笔记的更多相关文章

  1. 2018.10.27 bzoj1984: 月下“毛景树”(树链剖分)

    传送门 唉蒟蒻又退化了,这道sb题居然做了20min,最后发现是updcovupdcovupdcov写成了updaddupdaddupdadd我还能说什么233233233 就是让你转边权为点权之后, ...

  2. 2018.10.27 codeforces402D. Upgrading Array(数论+贪心)

    传送门 唉我觉得这题数据范围1e5都能做啊... 居然只出了2000 考完听zxyzxyzxy说我的贪心可以卡但过了? 可能今天本来是0+10+00+10+00+10+0只是运气好T1T1T1骗了10 ...

  3. 2018.10.27 bzoj3209: 花神的数论题(数位dp)

    传送门 数位dpdpdp经典题. 题面已经暗示了我们按照二进制位来数位dpdpdp. 直接dpdpdp多少个数有111个111,222个111,333个111-, 然后快速幂算就行了. 于是我们枚举前 ...

  4. 2018.10.27 洛谷P2915奶牛混合起来Mixed Up Cows(状压dp)

    传送门 状压dp入门题. 按照题意建一个图. 要求的就是合法的链的总数. 直接f[i][j]f[i][j]f[i][j]表示当前状态为jjj,下一位要跟iii连起来的方案数. 然后从没被选并且跟iii ...

  5. 2018.10.27 loj#2292. 「THUSC 2016」成绩单(区间dp)

    传送门 g[i][j][k][l]g[i][j][k][l]g[i][j][k][l]表示将区间l,rl,rl,r变成最小值等于kkk,最大值等于lll时的花费的最优值. f[i][j]f[i][j] ...

  6. 2018.10.27 loj#6035. 「雅礼集训 2017 Day4」洗衣服(贪心+堆)

    传送门 显然的贪心题啊...考试没调出来10pts滚了妙的一啊 直接分别用堆贪心出洗完第iii件衣服需要的最少时间和晾完第iii件衣服需要的最少时间. 我们设第一个算出来的数组是aaa,第二个是bbb ...

  7. POI 2018.10.27

    [POI2015]LOG 维护一个长度为n的序列,一开始都是0,支持以下两种操作:1.U k a 将序列中第k个数修改为a.2.Z c s 在这个序列上,每次选出c个正数,并将它们都减去1,询问能否进 ...

  8. math(2018.10.27)

    20%的数据直接暴搜就行,接下来我们考虑哪些数不能够出现在同一个集合中,就连一 条边,我们会发现前

  9. physics(2018.10.27)

    这道题可以推出\(O(1)\)的算法,但是实际上暴力模拟就可以过了. 代码(暴力模拟): #include<cstdio> #include<algorithm> #inclu ...

随机推荐

  1. SQL问题:未启用当前数据库的 SQL Server Service Broker

    数据库分离后,附加回到数据库,然后在程序中打开调用数据库的页面,出现如下问题:“未启用当前数据库的 SQL Server Service Broker,因此查询通知不受支持.如果希望使用通知,请为此数 ...

  2. codevs 2919 选择题

    时间限制: 1 s  空间限制: 16000 KB  题目等级 : 黄金 Gold 题目描述 Description 某同学考试,在N*M的答题卡上写了A,B,C,D四种答案. 他做完了,又不能交,一 ...

  3. (四)maven之查找jar包坐标,选择jar包版本

    ①    先访问http://www.mvnrepository.com/  ,这个地址是maven的公共库. ②   以spring core的jar包为例.在页面的最上方的中间,输入spring ...

  4. Linux系统里让vim支持markdown格式的语法高亮

    Markdown是深受程序员喜爱的一个文件格式. 然而Linux里默认的vim设置,并不支持markdown格式的语法高亮显示. 下面就来介绍如何设置使得markdown格式的文件在vim里也能享有语 ...

  5. Gym 100342F Move to Front (树状数组动态维护和查询)

    用树状数组动态和查询修改排名. 树状数组可以很方便地查询前缀和,那么可以利用这一特点,记录一个点在树状数组里最后一次出现的位置, 查询出这个位置,就可以知道这个点的排名了.更改这个点的排名的时候只要把 ...

  6. Tensorflow_入门学习_2_一个神经网络栗子

    3.0 A Neural Network Example 载入数据: from tensorflow.examples.tutorials.mnist import input_data mnist ...

  7. Html5怎么导出图片

    其实很简单, 首先需要两个js文件 jquery.min.js html2canvas.js 直接上代码,几行就解决了 <a id="example1" onclick=&q ...

  8. python基础一 day14 复习

    迭代器和生成器迭代器:双下方法 : 很少直接调用的方法.一般情况下,是通过其他语法触发的可迭代的 —— 可迭代协议 含有__iter__的方法('__iter__' in dir(数据))可迭代的一定 ...

  9. rpn网络结构再分析

    这是rpn网络train阶段的网络结构图 rpn_conv1之前的网络是特征提取层,也是和fast rcnn共享的层.rpn_conv1是一层1*1的卷积,这一层是单独为rpn网络多提取一层特征,这一 ...

  10. ios之UIPageControl

    分页控件是一种用来取代导航栏的可见指示器,方便手势直接翻页,最典型的应用便是iPhone的主屏幕,当图标过多会自动增加页面,在屏幕底部你会看到原点,用来只是当前页面,并且会随着翻页自动更新. 一.创建 ...