- 博客(6)
- 资源 (2)
- 收藏
- 关注
原创 HDU5519 Kykneion asma (指数生成函数+快速数论变换模任意数+启发式合并思想)
先说一下,这个不是正解。但是也可以过。 题意:有5个数字——0,1,2,3,4,每个数字分别有a0,a1,a2,a3,a4个。问这些数字能组成多少个n位数? 数据范围:a<=30000,n<=15000 时限:6s 分析: 首先n位数肯定是排列,每种数字有很多个,就是多重集,这个就是多重集的排列问题。显然是指数生成函数可以做的。 关于指数生成函数可以看看我前面的生成函数这个课件。 现在
2016-02-26 12:14:19 2203
原创 数位DP小结
数位DP的模式一般是从L到R有多少满足条件的数。 写记忆化搜索不错,模式性很强而且好写。省略了不少无效状态。 比较难想的是状态的优化和表示。 SPOJ - BALNUM Balanced Numbers 给出区间[L,R]问在区间中有多少数字满足其某一位是奇数的位数有偶数个,某一位是偶数的位数有奇数个。 考虑状态压缩,0-9这9个数,每个数3个状态,0代表没使用,1代表用了奇数个,2代表
2016-02-18 23:00:44 564
原创 插头DP小结
插头DP一般都是棋盘模型,找路径或者环路最值或者方案数。 插头:说白了就是两个联通的格子,一个走向另一个,那么这里就有一个插头。 轮廓线:DP逐格DP,那么轮廓线可以分开DP过的格子和未DP的格子。轮廓线的长度明显是m+1。插头垂直于轮廓线。 转移: 轮廓线在换行的时候要位移,这个画画图就出来了。 然后具体问题具体讨论。比如任意多个环路,不考虑方向,那么就是eat the trees,用最
2016-02-18 22:34:46 4989
原创 快速傅里叶变换
自己写的课件公式太多不好弄上来,还是算了。 贴两个模板。一个FFT一个NTT,都是UOJ#34的。#include<iostream>#include<cstdio>#include<cmath>using namespace std;const double pi=acos(-1.0);struct complex{//建议手封一个复数,比系统自带快400ms以上 double
2016-02-01 18:23:26 1308
原创 WC2016酱油记
DAY -1 听说picks要讲introduction to polynomial? 于是看了看他的博客然后给其他人讲了下fft DAY 0 坐动车跑到绵阳了。中午到的。 车站那个乡村基给差评,太慢了而且咖喱酱太稀了。 志愿者妹子领我们到大巴上然后到南山中学。 妹子挺热情的,点赞。 然后领了一堆资料下午听我们一个同学讲了下cdq分治。 晚上有个开幕式,感觉学校强行宣传233,其
2016-02-01 14:17:25 1468
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人