摘要: 首先旋转坐标系$x'=x-y$$y'=-x-y$则对于一个点,它下一步可以往它左上角任意一个点连线。根据Dilworth定理,答案=这个偏序集最长反链的长度。设f[i]为到i点为止的最长反链长度,则f[i]=max(f[j])+1,j在i的左下角按x坐标排序后用树状数组优化DP即可,时间复杂度$O(... 阅读全文
posted @ 2015-08-07 23:06 Claris 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 新建源汇S,T,根据题意可以建出一个DAG设f[x][y]为从x走到y的回文路径的方案数,则边界条件:f[x][x]=1对于一条边x->y,若a[x]==a[y],则f[x][y]=1转移方程为:若a[x]==a[y],则f[x][y]=sum(f[i][j])(x->i有边,j->y有边)若a[x... 阅读全文
posted @ 2015-08-07 20:45 Claris 阅读(433) 评论(0) 推荐(0) 编辑
摘要: 设d[i]表示能拼出的x中满足x%a[0]=i的最小的x,其中d[0]=0。若d[x%a[0]]#include#include#includeusing namespace std;typedef pairP;const int N=50010,inf=1000000010;int n,m,i,x... 阅读全文
posted @ 2015-08-07 15:13 Claris 阅读(656) 评论(0) 推荐(0) 编辑