摘要: 指针的强大功能,,,,简直牛逼!!! 阅读全文
posted @ 2018-08-18 17:38 wa007 阅读(1540) 评论(1) 推荐(1) 编辑
摘要: 正解思路,感觉应该是先判特殊情况,比如新建的路线可以建在于1-n无关的地方,具体判别方法见代码 然后再判断旧路线两端的最大贡献值,即代码中的ans,枚举1-n线路中的每个节点i,求1-[1,i]节点的最大值和[i+1,n]-n节点的最大值,维护ans即可 阅读全文
posted @ 2018-08-08 18:46 wa007 阅读(360) 评论(0) 推荐(0) 编辑
摘要: 另类解法 将每一个节点拥有的各深度节点数量存在vector中,向上返回,这样不会占用过多的内存,以此判断最多节点相应的深度即可,但正常写最后一个数据会T,毕竟一次复制一个节点,相当于复制了(1+2+3+4+...+1e6)次,明显超时,所以特判一下1e6个节点的线性树,就算过了这个题了,,,但这个解 阅读全文
posted @ 2018-07-28 17:00 wa007 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 记录++之前先记一下左右值和存取数据的问题 数据的存放分三个部分,堆区,栈区和静态变量区 左值可以更改,右值不能更改 栈区和堆区存储的都是左值,可以随意更改其值,静态变量区部分数据是右值,比如const修饰的值,函数创建的临时变量,都不可更改 前缀++重载,直接直接++操作,返回本身即可 后缀++重 阅读全文
posted @ 2018-07-27 23:22 wa007 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 题目大意:对于一个不完全二分图,根节点为1,叶节点值为0或1,非叶节点包含一个操作(and,or,xor,not),求改变各个叶节点的值时(即0改为1,1改为0),根节点的值是多少 解法:遍历图求各节点的值,改变每个叶节点时,向图根节点遍历,求根节点值即可 有两个需要剪枝的地方,一,当改变到当前节点 阅读全文
posted @ 2018-07-27 16:53 wa007 阅读(383) 评论(0) 推荐(0) 编辑
摘要: 之前写过这个算法,时间长了就忘掉了,,现在不看书自己努力回想起来,对算法的理解,对线段树的理解感觉也更深了一点(可能心理作用,哈哈哈) 思路简单说一下吧 从做到右遍历每一条矩阵的边(左右边),看该边对右边的面积贡献是正还是负(矩阵左边为正,右边为负),在y轴上用线段树维护在y轴的贡献值,与x轴上该边 阅读全文
posted @ 2018-06-29 21:23 wa007 阅读(171) 评论(0) 推荐(0) 编辑