随笔分类 - --------状压dp
摘要:给出一个长度为 m 的序列 A, 请你求出有多少种 1...n 的排列, 满足 A 是它的一个 LIS.dp套dp好题!我们先要考虑怎么搞一个状态出来考虑做lis的两种方法:1.设f[i]表示做到i的最长子序列长度2.设f[i]表示长度为i的上升子序列最后那个数最小是...
阅读全文
摘要:由于n很小(#include#includeusing namespace std;int f[16][3][1=g[0] && f[1]>=g[1];}int main(){ scanf("%d",&n); MS=1<<n+1; for(int i=1;i<=n;++i){ scanf("%d...
阅读全文
摘要:由于n很小(#include#includeusing namespace std;int f[16][3][1=g[0] && f[1]>=g[1];}int main(){ scanf("%d",&n); MS=1<<n+1; for(int i=1;i<=n;...
阅读全文
摘要:现在有n个人要排成一列,编号为1->n 。但由于一些不明原因的关系,人与人之间可能存在一些矛盾关系,具体有m条矛盾关系(u,v),表示编号为u的人想要排在编号为v的人前面。要使得队伍和谐,最多不能违背k条矛盾关系(即不能有超过k条矛盾关系(u,v),满足最后v排在了u前面)。问有多少合法的排列。答案...
阅读全文
摘要:现在有n个人要排成一列,编号为1->n 。但由于一些不明原因的关系,人与人之间可能存在一些矛盾关系,具体有m条矛盾关系(u,v),表示编号为u的人想要排在编号为v的人前面。要使得队伍和谐,最多不能违背k条矛盾关系(即不能有超过k条矛盾关系(u,v),满足最后v排在了u...
阅读全文
摘要:题意:用1x2的骨牌填满4xN的格子的方案数设f[i][j]表示填到第i行,这一行的状态为j的方案数f[i][j]=Σf[i-1][k],其中k->j是一个合法转移合法转移要满足两个条件:1.若k的第x位为0,那么j的第x位一定要为1 (~k|j==j)2.k,j都为...
阅读全文
摘要:题意:用1x2的骨牌填满4xN的格子的方案数设f[i][j]表示填到第i行,这一行的状态为j的方案数f[i][j]=Σf[i-1][k],其中k->j是一个合法转移合法转移要满足两个条件:1.若k的第x位为0,那么j的第x位一定要为1 (~k|j==j)2.k,j都为...
阅读全文
摘要:【题目背景】公元215年,刘备取益州,孙权令诸葛瑾找刘备索要荆州。刘备不答应,孙权极为恼恨,便派吕蒙率军取长沙、零陵、桂阳三郡。长沙、桂阳蜀将当即投降。刘备得知后,亲自从成都赶到公安(今湖北公安),派大将关羽争夺三郡。孙权也随即进驻陆口,派鲁肃屯兵益阳,抵挡关羽。双方...
阅读全文
摘要:【题目背景】公元215年,刘备取益州,孙权令诸葛瑾找刘备索要荆州。刘备不答应,孙权极为恼恨,便派吕蒙率军取长沙、零陵、桂阳三郡。长沙、桂阳蜀将当即投降。刘备得知后,亲自从成都赶到公安(今湖北公安),派大将关羽争夺三郡。孙权也随即进驻陆口,派鲁肃屯兵益阳,抵挡关羽。双方...
阅读全文
摘要:农夫FJ和奶牛Bessie玩游戏,游戏由一个黑板和N张卡片组成。游戏初始时,黑板写的数字是0。每张卡片都写有一个[0,511]的整数。FJ和Bessie轮流操作,FJ先操作。操作者每次从当前的卡片中选取一张卡片出来(被选出来的卡片不会被再次利用),假设选出来的卡片写的...
阅读全文
摘要:农夫FJ和奶牛Bessie玩游戏,游戏由一个黑板和N张卡片组成。游戏初始时,黑板写的数字是0。每张卡片都写有一个[0,511]的整数。FJ和Bessie轮流操作,FJ先操作。操作者每次从当前的卡片中选取一张卡片出来(被选出来的卡片不会被再次利用),假设选出来的卡片写的...
阅读全文