摘要: 传送门 题意: 在一个树上,每个节点都有一个值,求最大的子树和。 思路: 树形dp入门。 用dfs,跑一边,回溯的时候求和,若和为负数,则减掉,下次不记录这个节点。 #include <iostream> #include <string> #include <cstring> #include < 阅读全文
posted @ 2018-06-10 12:50 ckxkexing 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 传送门 这里是Ford-Fulkerson写的最大流模板 #include <iostream> #include <cstdio> #include <algorithm> #include <cstring> #include <string> #include <vector> #includ 阅读全文
posted @ 2018-06-05 21:02 ckxkexing 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 传送门 题意:给定一个数,可以对其做交换相邻两个数字的操作。问最少要操作几步,使得可以被25整除。 思路:问题可以转化为,要做几次交换,使得末尾两个数为00或25,50,75; 自己一开始就是先for一遍,记录四种可能对于的步数,再对四种可能讨论(有前导0的情况);自己是在数据中,该对了自己的代码, 阅读全文
posted @ 2018-06-05 20:04 ckxkexing 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 传送门:http://codeforces.com/contest/988/problem/D 题意: 在一堆数字中,找出尽量多的数字,使得这些数字的差都是2的指数次。 思路: 可以知道最多有三个,差值为2、4;或者是a[i],a[i]+2的k次,a[i]-2的k次; 两个就直接找。 一个随便输出一 阅读全文
posted @ 2018-06-05 08:26 ckxkexing 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 1、参考:https://www.cnblogs.com/ckxkexing/p/8466097.html 这道题自己写过,还写过blog,但是第二次写还是不会。 (于是开坑,想做做dfs的整理。 阅读全文
posted @ 2018-06-04 21:22 ckxkexing 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 传送门 题意: 在平面中,有一个圆,有一个点,问能在这个圆中围出最大的圆的圆心坐标和半径。要求这个最大圆不包含这个点。 思路: 比较基础的计算几何,要分三种情况,第一种就是这个点在圆外的情况。第二种是点在圆内。第三种是这个点和圆心重合。 ac代码 #include <iostream> #inclu 阅读全文
posted @ 2018-06-04 19:25 ckxkexing 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 第一次写计算几何,ac,感动。 不过感觉自己的代码还可以美化一下。 传送门:http://acm.hdu.edu.cn/showproblem.php?pid=5128 题意: 在一个坐标系中,有n个点,从中找到两个互不touch,互不cross的两个矩形(边要和坐标轴平行),使得面积最大。 思路: 阅读全文
posted @ 2018-06-02 23:32 ckxkexing 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 传送门:http://codeforces.com/contest/976/problem/E 参考:https://www.cnblogs.com/void-f/p/8978658.html 题意: 对于每一个生物,有一个ph值和伤害值。现在有a次使ph值乘2的机会,有b次是伤害值等于ph值得机会 阅读全文
posted @ 2018-05-29 20:32 ckxkexing 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 传送门:http://codeforces.com/contest/980/problem/C 参考 题意: 给定n个数字,每个数在0~256间,现在给至多连续k的数分为一组,给出字典序最小的答案。 思路: 贪心,对于每一个a[i],查找$max(0,a[i] - k + 1)$到 a[ i ] 中 阅读全文
posted @ 2018-05-25 20:28 ckxkexing 阅读(276) 评论(0) 推荐(0) 编辑
摘要: 传送门:送你去985D; 题意: 你有n袋沙包,在第一个沙包高度不超过H的条件下,满足相邻两个沙包高度差小于等于1的条件下(注意最小一定可以为0),求最少的沙包堆数; 思路: 画成图来说,有两种可能,一种是y=h-x一次函数和常函数y=x组合,还有一种是先上升后下降的函数,注意斜率绝对值都是1; 二 阅读全文
posted @ 2018-05-23 17:22 ckxkexing 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 传送门:http://poj.org/problem?id=2513 题意:给你许多木棍,木棍两端都有颜色,问能不能首尾相接,要求颜色相同。 参考:https://www.cnblogs.com/kuangbin/archive/2012/08/07/2626223.html 思路: 由图论知识可以 阅读全文
posted @ 2018-05-23 14:25 ckxkexing 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 今天看到讲2-SAT比较好的blog,感觉微微的理解了2-SAT 传送门 参考: https://blog.csdn.net/leolin_/article/details/6680144 题意: 你有2*n把钥匙,但是在每一对钥匙中,用了a,就不能用b。你要用这么多钥匙去开尽可能多的门。开门的规则 阅读全文
posted @ 2018-05-21 20:25 ckxkexing 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 传送门: 题意: 给出m条关系,表示n个牛中的崇拜关系,这些关系满足传递性。问被所有牛崇拜的牛有几头; 思路: 先利用tarjan缩点,同一个点中的牛肯定就是等价的了,建立新的图,找出其中出度为0的点。如果这个点唯一,那么答案就是这个缩点中包含的所有点。 如果不唯一,那么答案不存在。因为有两个点出度 阅读全文
posted @ 2018-05-21 16:13 ckxkexing 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 今天又加深的理解了KMP 认真看了这篇博客,感觉讲的还ok; 然后带着理解写了洛谷的P3375字符串KMP模板题; 阅读全文
posted @ 2018-05-18 23:27 ckxkexing 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 思路: 这个 a[1]=a[2]=a[3]=1 a[x]=a[x-3]+a[x-1] (x>3) 可以想成: 【a(n) 】 【1 0 1】 【a(n-1) 】 【a(n-1) 】 = 【1 0 0】 * 【a(n-2) 】 【a(n-2) 】 【0 1 0】 【a(n-3) 】 然后就是利用矩阵快 阅读全文
posted @ 2018-05-17 14:27 ckxkexing 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 矩阵快速幂模板 阅读全文
posted @ 2018-05-17 13:55 ckxkexing 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 题意: 求给定区间中最大的连续异或和; 思路: DP的思想,先dp求出每个区间的异或和,再dp更新成当前这个$dp[i][j]$和$dp[i-1][j]、dp[i-1][j+1]$中的最大值; 这样可以保证是同一个区间亦或。 #include <iostream> #include <cstdio> 阅读全文
posted @ 2018-05-16 16:06 ckxkexing 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 传送门:http://codeforces.com/contest/984/problem/C 这道题 题意:求q/p是否能用k进制有限表示小数点后的数; 思路:数学推理: 1、首先把q/p化为最简形式。 2、如果有限,相当于 q | p *k的n次 ,就是说p*k。。。*k后可以整除q (“|”— 阅读全文
posted @ 2018-05-16 14:50 ckxkexing 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 传送门:http://codeforces.com/contest/978/problem/D 题意:求变为等差数列,最小要改动的数字个数; 思路:暴力,这道题只用枚举前面两个数字的情况就ok,反思自己在看到这道题的时候各种找规律。 复杂的是3*3*n,我看到群里说的复杂度,内心才恍然大悟。 阅读全文
posted @ 2018-05-13 22:54 ckxkexing 阅读(452) 评论(0) 推荐(0) 编辑
摘要: 题意:问一个数最多可以变成几个合数的和; 思路: 时刻提醒自己再看到题目的时候的所作所为,该找规律找规律,想什么ksm,质数判断开根号。 除了1、2、3、5、7、11外,其余的数都可以通过4,6,9获得,所以只要用x对4取余,结果为1或3,ans都要减1; (1、3-->9 ; 2-->6 ) 阅读全文
posted @ 2018-05-12 00:02 ckxkexing 阅读(202) 评论(0) 推荐(0) 编辑