15145641

上一页 1 2 3 4 5 6 7 8 9 ··· 18 下一页
摘要: 比较简单的模拟,建议使用STL优先队列。 代码如下: 阅读全文
posted @ 2016-08-15 16:48 icode-xiaohu 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 方法:从根节点开始广搜,如果遇到了应该删除的点,就再广搜删掉它的子树并标记,然后统计一下被标记的个数就是答案,所谓技巧就是从根节点开始搜索的时候,如果遇到了某个节点的距离<0,就让它是0,0可以消除负数效应,让后面的点重新参与正常删除操作,这个方法的正确性不难证明,可以自己画一下图。而且还有比较方便 阅读全文
posted @ 2016-08-15 16:46 icode-xiaohu 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 啥也不说了,直接看图吧…… 代码如下: 阅读全文
posted @ 2016-08-15 16:28 icode-xiaohu 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 网络预选赛的题目……比赛的时候没有做上,确实是没啥思路,只知道肯定是整数分解,然后乘起来素数的幂肯定是偶数,然后就不知道该怎么办了… 最后题目要求输出方案数,首先根据题目应该能写出如下齐次方程(从别人那里盗的……): a11*x1 ^ a12*x2 ^ ... ^ a1n*xn=0 a21*x1 ^ 阅读全文
posted @ 2016-08-15 16:16 icode-xiaohu 阅读(480) 评论(6) 推荐(0) 编辑
摘要: 这个题比较好的解决办法,我觉得还是map,map的size可以很快的知道我们选了几个字母,而且可以作为计数器,知道每一个字母出现了多少次, erase函数可以清除掉一个元素。 所以,定义两个指针L和R,当选择的数够了sum个以后,我们移动L指针,开始删除字母,直到不满足为止,然后移动R指针,看有没有 阅读全文
posted @ 2016-08-08 15:39 icode-xiaohu 阅读(376) 评论(0) 推荐(0) 编辑
摘要: 题目中的描述就很最近公共祖先,再说其实这个题并不难,就是麻烦点(代码其实可以化简的),我写的判定比较多。 方法;求出两者的最近公共祖先lca,在求出两者到lca的距离 分析:给出a和b,如果LCA(a,b) == a或者b,那他们肯定是直系的,是父子,爷孙之类的关系。 如果LCA(a,b)> a 和 阅读全文
posted @ 2016-08-07 13:54 icode-xiaohu 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 一开始确实是我的锅,我把题意理解错了,以为是一个q周围没有q的时候才可以当时qu,其实是只要碰到q,他就是qu,所以我们也可以通过预处理的方式,把字典中的不满足qu连在一起的直接去掉。 后来的各种TIE我就表示不能理解了……我换了好多个姿势,改了各种各样的形式,最后改的快跟学长一模一样了,还是TLE 阅读全文
posted @ 2016-08-06 13:51 icode-xiaohu 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 题意:……应该不用我说了,看起来就很容斥原理,很中国剩余定理…… 方法:因为题目中的n最大是15,使用状态压缩可以将所有的组合都举出来,然后再拆开成数组,进行中国剩余定理的运算,中国剩余定理能够求出同时满足余膜条件的最小整数x,x在(1,M)之间由唯一值,M是各个除数的乘积,所有符合条件的解为ans 阅读全文
posted @ 2016-07-31 16:34 icode-xiaohu 阅读(425) 评论(0) 推荐(0) 编辑
摘要: 题意:有两台机器,上面有多个工作区域,有多个任务,分别可以在两台机器的某一个区域上完成,两台机器一开始都在0区域上工作,每次更改区域,都会重新启动一次,让我们求出最小的重启次数。 思路:将两个区域连线,使用二分图,求出最大匹配数,容易想明白,正好就是最小重启的次数。 注意:0一开始就已经完成,不应该 阅读全文
posted @ 2016-07-31 16:10 icode-xiaohu 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 思路:定义DP方程dp[i][j]标记选到第i个巧克力的时候,桌面上还剩下j个巧克力,状态转移有两个方向,dp[i-1][j-1],dp[i-1]lj+1],分别表示桌面上多了一个和消了一个,乘上需要的概率即可。 注意:这个题目的输入量很大,所以需要优化,首先是n+m是奇数的时候,或者m > c的时 阅读全文
posted @ 2016-07-31 16:05 icode-xiaohu 阅读(227) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 18 下一页