摘要:
题意:一棵有根树,每个节点都有一个value值和属性(zan或是 CANDLE)。你可以通过反转一些点的属性,反转一个点时候,它的整个子树都会被反转属性。有些点反转消耗代价为X,有些为Y。你的目标的是求zan和candle差的最大值。 思路:dp[i][0]代表zan比candle多的最大值,dp[ 阅读全文
摘要:
题意:n条隧道由一些点连接而成,其中每条隧道链接两个连接点。任意两个连接点之间最多只有一条隧道。任务就是在这些连接点中,安装尽量少的太平井和逃生装置,使得不管哪个连接点倒塌,工人都能从其他太平井逃脱,求最少安装数量和方案。 思路:其实本题就相当于在一张无向图中,涂尽量少的黑点,使得任意删除哪个点,每 阅读全文
摘要:
题意:就是一个打印分段收费政策,印的越多,单张价格越低,输入需要印刷的数量,求最小印刷费用一个细节就是,比当前还小的状态可能是最后几个。 1 #include<stdio.h> 2 #include<string.h> 3 #include<cstdio> 4 #include<string> 5 阅读全文
摘要:
题意:在平面上0,0点,有一个半径为R的圆形区域,并且在0,0点固定着一个半径为RM(<R)的圆形障碍物,现在圆形区域外x,y,有一个半径 为r的,并且速度为vx,vy的硬币,如果硬币碰到了障碍物,将会保持原有的速度向反射的方向继续前进,现在给出R,RM,r,x,y,vx,vy,问硬币的任意部分在圆 阅读全文
摘要:
题意:给了一个2*2的魔方..每步操作可以将任意一面翻转90度..现在问在N(<=7)步内.最多能翻出几面相同的. 直接打表模拟每种翻转情况 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 #include<iostrea 阅读全文
摘要:
题意:两点(x1,y1), (x2,y2)的曼哈顿距离=欧几里得距离 也就是:x1=x2或y1=y2,再删除重合点造成的重复计数即可。 1 #include <stdio.h> 2 #include <string.h> 3 #include <iostream> 4 #include <algor 阅读全文
摘要:
题意:给你n,m n为有多少人,m为有多少组关系,每组关系代表两人相互憎恨,问有多少个骑士不能参加任何一个会议。 白书算法指南 对于每个双联通分量,若不是二分图,就把里面的节点标记 1 #include <stdio.h> 2 #include <string.h> 3 #include <iost 阅读全文
摘要:
参考算法指南白书P316 1 #include <stdio.h> 2 #include <string.h> 3 #include <iostream> 4 #include <algorithm> 5 #include <vector> 6 #include <queue> 7 #include 阅读全文
摘要:
算法指南白书 思路:“连续和转化成前缀和之差” 阅读全文
摘要:
算法指南 主要就是建立欧拉回路 阅读全文