上一页 1 ··· 20 21 22 23 24 25 26 27 28 ··· 69 下一页
该文被密码保护。 阅读全文
posted @ 2016-08-15 10:59 Fighting_Heart 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 快速数论变换ntt。 早上才刚刚接触了一下FFT,然后就开始撸这题了,所以要详细地记录一下。 看了这篇巨巨的博客才慢慢领会的:http://blog.csdn.net/cqu_hyx/article/details/52194696 FFT的作用是计算卷积。可以简单的理解为计算多项式*多项式最后得到 阅读全文
posted @ 2016-08-13 18:29 Fighting_Heart 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 水题。 阅读全文
posted @ 2016-08-13 10:33 Fighting_Heart 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 水题。 阅读全文
posted @ 2016-08-13 10:32 Fighting_Heart 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 开30W个vector将数字归类,每一类数字开一个指针P,记录已经阅读到哪一个了,还可以开一个优先队列维护这些指针P。 阅读全文
posted @ 2016-08-13 10:31 Fighting_Heart 阅读(339) 评论(0) 推荐(0) 编辑
摘要: FFT,还没有彻底理解,套了个板子。 阅读全文
posted @ 2016-08-13 10:23 Fighting_Heart 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 记录一下每个位置最终到达的位置。然后每次操作排序。 阅读全文
posted @ 2016-08-12 15:50 Fighting_Heart 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 如果左括号数量和右括号数量不等,输出No 进行一次匹配,看匹配完之后栈中还有多少元素: 如果n=2,并且栈中无元素,说明是()的情况,输出No 如果n=2,并且栈中有元素,说明是)(的情况,输出Yes 如果n>2,并且栈中没有元素,或者有2个,或者有4个,输出Yes 如果n>2,并且栈中元素个数大于 阅读全文
posted @ 2016-08-12 15:42 Fighting_Heart 阅读(123) 评论(0) 推荐(0) 编辑
摘要: dp[i]表示i子图的最小染色数目。 dp[i]=min( dp[i], dp[j]+1 ), j是i的子集,并且j图内的点没有边相连。 高效率枚举i子集的方法:for(int j=i;j;j=(j-1)&i) 每一个j都是i的子集。 阅读全文
posted @ 2016-08-12 15:38 Fighting_Heart 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 该问题和xi,di均无关,碰撞只会使得速度反向,大小不会变。因此只要计算速度。 阅读全文
posted @ 2016-08-12 13:21 Fighting_Heart 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 首先判断一下两个集合是否能够拓扑排序,顺便记录下每个节点的拓扑序。 然后看T2中每个点在T1中能够放在哪一个位置,记录下这个位置Pi。 然后T2中(按拓扑序排好),计算Pi的一个非严格递增的LIS。LIS长度就是答案。 这题scanf读入都900+ms了,有时直接卡TLE。改用gets整行读入,时间 阅读全文
posted @ 2016-08-11 19:11 Fighting_Heart 阅读(306) 评论(0) 推荐(0) 编辑
摘要: n*(m-1)/(m*m) 阅读全文
posted @ 2016-08-10 22:31 Fighting_Heart 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 构造。从a[i]最小的开始放置,例如放置了a[p],那么还未放置的,还需要建边的那个点 需求量-1,然后把边连起来。 阅读全文
posted @ 2016-08-10 22:14 Fighting_Heart 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 搞了第三个栈来表示合并之后的。偷懒写了一个优先队列。 阅读全文
posted @ 2016-08-10 22:09 Fighting_Heart 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 状压dp计算方案数。 dp[s]表示抽到s状态的牌的方案数有几种。 如果s状态已经获胜,那么答案可以加上dp[s]*剩余未抽的牌的全排列数,该状态不再向后转移。 如果s状态未获胜,但是还可以抽牌,那么方案数往后转移。 如果s状态未获胜,且不能抽牌,那么该状态也不再向后转移。 阅读全文
posted @ 2016-08-10 21:56 Fighting_Heart 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 从a变到b,也就是将a一直除素因子,除到1为止,然后乘b的素因子,一直乘到b。 但是gcd(a,b)部分是不用除下去的。所以d(a,b)=a/gcd(a,b)的素因子个数+b/gcd(a,b)的素因子个数。 然后....脑洞开始...... 枚举这个因子P,然后去计算a/P的素因子个数+b/P的素因 阅读全文
posted @ 2016-08-10 21:52 Fighting_Heart 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 加维降复杂度 阅读全文
posted @ 2016-08-09 10:29 Fighting_Heart 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 方法太厉害了....看了官方题解的做法....然后...想了很久很久才知道他想表达什么.... 阅读全文
posted @ 2016-08-08 19:24 Fighting_Heart 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 背包变形。与普通的背包问题不同的是:允许有两个物品可以花费减半。 因此加一维即可,dp[i][j][k]表示前i个物品,有j个花费减半了,总花费为k的情况下的最优解。 阅读全文
posted @ 2016-08-07 21:24 Fighting_Heart 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 背包变形。 将操作分为了两类,可以分开处理。 可以dp处理出L[i]:L[i]=-1代表从左到右 i 长度不能被拼凑出来,L[i]!=-1表示从左到右 i 长度能被拼凑出,并且最小费用为L[i]。 反着来一次dp就可以处理出R[i]:R[i]=-1代表从右到左 n+1-i 长度不能被拼凑出来,R[i 阅读全文
posted @ 2016-08-07 21:21 Fighting_Heart 阅读(150) 评论(0) 推荐(0) 编辑
上一页 1 ··· 20 21 22 23 24 25 26 27 28 ··· 69 下一页