一个数大约有 $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. FaceBook pop 动画开源框架使用教程说明

    https://github.com/facebook/pop Pop is an extensible animation engine for iOS and OS X. In addition ...

  2. firstElectron_web5 安装

    小娜 搜 cmd 右键 管理员运行 1.装全局 这样 不用每次都下载 因为包挺大的 还有用cnpm 要不太慢 cnpm install electron --save-dev --save-exact ...

  3. 【Python】使用cmd模块构造一个带有后台线程的交互命令行界面

    最近写一些测试工具,实在懒得搞GUI,然后意识到python有一个自带模块叫cmd,用了用发现简直是救星. 1. 基本用法 cmd模块很容易学到,基本的用法比较简单,继承模块下的Cmd类,添加需要的功 ...

  4. Mac上安装Node和NPM【转】

    http://www.jianshu.com/p/20ea93641bda 作为前端开发者,node和npm安装必不可少.然而有时会因为安装新的app(如MacPorts,慎装,它会修改基本环境变量以 ...

  5. ViewController的lifecycle和autolayout

  6. emoji等表情符号存mysql的方法

    项目中需要存储用户信息(用户昵称有表情符号),自然就遇到了emoji等表情符号如何被mysql DB支持的问题 这里引用先行者博文:https://segmentfault.com/a/1190000 ...

  7. vim的卸载以及环境的配置小记

    一.背景 由于之前配置错误,导致我的YouCompleteMe这个插件不能用了,一直提示: ERROR:Required vim compiled with +python. YouCompleteM ...

  8. 【OS_Linux】Linux中虚拟机的三种上网方式——桥接、NAT、Host-only

    1.桥接 桥接方便做实验,配置ip方便.可以和局域网中的其他机器进行通信,也可以和公网进行通信.缺点是会占用主机所在局域网的一个ip. 2. NAT NAT模式下虚拟机可以和主机进行通信,可以上网,而 ...

  9. iptables IP流量统计

    最后是使用ipset进行流量统计,iptaccount资料太少而且还跟网上说明的操作情况不相符,继续看源码分析组长老大都不高兴.ipset使用帮助 1. 创建ipset集合:ipset create ...

  10. RN原生方法setNativeProps

    https://facebook.github.io/react-native/docs/direct-manipulation.html setNativeProps可以直接修改底层native组件 ...