上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 40 下一页
摘要: PS:官方题解挺详细的,就是自己写有点难度,在DFS以a[1]为根的树中,要向下传递上一层的合法方案数。也就是 v = v * sum * fac[i](v就是上一层的合法方案数),吐槽一下,计数类的问题是真的麻烦,不重不漏。 #include<bits/stdc++.h> #define ll l 阅读全文
posted @ 2018-08-09 14:23 天之道,利而不害 阅读(410) 评论(0) 推荐(1)
摘要: C. Vasya And The Mushrooms 题解:拿笔画他的行走路线,你会发现可以前缀和预处理一些东西出来。 D. Vasya And The Matrix 题解:可以这么构造,除了第一行,第一列填上以外,其它的行和列都填0,所以主要是算map[1][1]改填几,或者填最后一行和最后一列。 阅读全文
posted @ 2018-08-04 18:52 天之道,利而不害 阅读(288) 评论(0) 推荐(0)
摘要: PS:注意啊啊啊啊啊啊,Minato是逆时针旋转,那我们为了旋转回去,应该顺时针。没注意,debug花了好长时间。check的时候是判断当前的旋转是不是与先前的矛盾,比如将黑色那块旋转,就判断旋转后是不是与红色部分矛盾。 阅读全文
posted @ 2018-08-03 15:17 天之道,利而不害 阅读(308) 评论(0) 推荐(0)
摘要: PS:由于打表姿势没对,错过了很好写的一道题。经过打表你发发现最上角的矩阵,如果是奇数,大小为 L * L,如果为偶数,大小为 2L * 2L,是重复出现。为了便于计算,将循环节的大小统一为 2L * 2L,然后预处理二维前缀和,瞎搞搞就出来了。 阅读全文
posted @ 2018-08-03 09:22 天之道,利而不害 阅读(328) 评论(2) 推荐(0)
摘要: PS:没看出这个可以离线。。。官方题解 标程貌似不是常规莫队的写法,同一个块内,没有对 r 排序,优先处理每个块的答案。学习到了阶乘逆元的递推公式。 避免加法溢出 避免乘法溢出 避免减法取模溢出 阅读全文
posted @ 2018-08-02 13:27 天之道,利而不害 阅读(152) 评论(0) 推荐(0)
摘要: PS:首先这样的路线是按照顺时针走的,那么两个点的叉积必定是负数,负数最小,则代表面积最大,因为叉积还可以表示成三角形的面积,想象一下,路线与x轴围成的面积最大,那么路线应该绕着上凸包。重点来了,字典序最小。因为凸包的拐点、起点、终点是必须要的,那么为了最小化字典序,在同一条边上共线的点中(除了这条 阅读全文
posted @ 2018-08-02 11:16 天之道,利而不害 阅读(279) 评论(0) 推荐(0)
摘要: PS:比赛的时候题都没读懂,dp[ i ][ S ] : 表示第 i 次操作,已经匹配好的点的集合为S的方案数。即该集合和该集合的子集都表示一个匹配,如果这个集合不是一个匹配,那么在dp数组中这个集合的方案数会一直为0,即一直不会被更新。 VJ大佬的代码:201605130100 阅读全文
posted @ 2018-07-31 16:58 天之道,利而不害 阅读(198) 评论(0) 推荐(0)
摘要: 题解:从前往后,维护一个从栈底到栈顶递增的栈,那么每个区间的最小值就是栈底。从后往前,维护一个从栈顶到栈底递增的栈,那么每个区间的最大值就是栈底。 阅读全文
posted @ 2018-07-31 13:46 天之道,利而不害 阅读(174) 评论(0) 推荐(0)
摘要: PS:怎么没想到从后往前做呢。。。紫书上做过类似的题,滑动窗口。如果当前元素比栈顶元素大,则不断弹出栈顶元素直到栈顶元素比当前元素小,然后把当前元素压入栈中。如果当前元素比栈顶元素小,则直接入栈。如果当前栈中有元素不再当前区间中,则不断弹出栈底元素。每段区间最大值就是栈底元素,递增个数就是栈的大小。 阅读全文
posted @ 2018-07-31 13:04 天之道,利而不害 阅读(238) 评论(0) 推荐(0)
摘要: 题意:n个诺米骨牌,每个骨牌的两面都有数字(0 ~ 6),求n个骨牌的一个排列,满足相邻骨牌相邻的一面的数字相同。 题解:每张骨牌当作一条边,啥意思呢?比如说第一张骨牌的两面是3和4,那么就在3和4之间连一条编号为1的无向边,建好图好,判断这张图能不能一笔画完,也就是一条欧拉路径能不能覆盖完所有的边 阅读全文
posted @ 2018-07-30 22:04 天之道,利而不害 阅读(151) 评论(0) 推荐(0)
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 40 下一页