摘要: 我是先讲题目呢,还是先骂人呢? 算了,先讲题目;https://www.luogu.org/problem/show?pid=3237 题目意思是遍地可找的,但是我们怎么去记录某个点值确定时根节点的值呢? 我一开始想到一个dfs n次的算法,时间复杂度n^2,炸! 其实你画个图自己... 阅读全文
posted @ 2017-02-17 19:32 largecube233 阅读(97) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.org/problem/show?pid=1896 感觉像N皇后问题有没有啊,但是这里范围比较少,我们可以采用状压dp来搞一搞; 预处理搞出每一种状态需要国王的数量,以及每两种状态之间是否以衔接,之后用dp一层一层地算就好了 现在我知道为什么有人... 阅读全文
posted @ 2017-02-17 14:13 largecube233 阅读(95) 评论(0) 推荐(0) 编辑
摘要: c++的long long很坑爹的啊; 首先 -2^63~2^63-1 输出时printf要”%lld” 另外还有一些神奇的东西啊; 1.关于数字,在后面+LL就特指longlong的数字 在位运算是,比如a&1,如果a为longlong,1位int那就完了啊,因为int的长度不如... 阅读全文
posted @ 2017-02-17 10:45 largecube233 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 这题很简单,而且题面描述也很清楚,我就不放样例了。 设f[i][2]表示第i个点选(1)或不选(0),以i为根的这棵子树能选的最大价值。易得转移方程为: f[i][0]=∑(max(f[s][0],f[s][1])) f[i][1]=∑(f[s][0])+w[i] ————————... 阅读全文
posted @ 2017-02-17 10:39 largecube233 阅读(63) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.org/problem/show?pid=3437 代码就不用看了,全抄hzwer的,但是我调了一个多钟头汗; 这个就是基本的二维线段树了,lazy都不用的,不知道是不是传说中的标记永久化; 二维线段树,我选择树套树,因为四分树好像会被卡 网上只... 阅读全文
posted @ 2017-02-17 08:26 largecube233 阅读(481) 评论(0) 推荐(0) 编辑