05 2016 档案
摘要:题目链接:http://poj.org/problem?id=1485 暂时我还没想出思路求路径。哈哈哈,先写一下中间步骤吧。
阅读全文
摘要:题目链接:http://poj.org/problem?id=1513 解题报告: 思路: 知识点从第二个开始扫,递推表达式是:minlec[i]=min(minlec[k])+1,并且要保证,time[k+1]+...+time[i]<L,即在一节课之内上完知识点k+1到知识点i; 要是minle
阅读全文
摘要:题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1163 解题报告: 将整数N分解为:两个及以上的不重复的整数,最流行的解法是动态规划,和生成函数(01背包思路)。 将问题看成经典的搭积木的问题。相当与求:将N块积木
阅读全文
摘要:题目链接:http://poj.org/problem?id=1014 背包问题太经典了,之前的一篇博客已经讲了背包问题的原理。 这一个题目是多重背包,但是之前的枚举是超时的,这里采用二进制优化。 这是所有01背包,完全背包,多重背包的模板哦!
阅读全文
摘要:0-1背包 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2602 完全背包: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1114 多重背包:http://acm.hdu.edu.cn/showpro
阅读全文
摘要:题目链接:http://poj.org/problem?id=3983 中文题,就不解释题意了。 类似之前的一篇博客,这里也不上解释了,直接上代码吧。
阅读全文
摘要:题目链接:http://hihocoder.com/contest/hiho98/problem/1 24点游戏大家都玩过。我算了一下,24点有4!*5*4*4*4种情况。 从这个公式大家就能看出这个题目的思路来。 4!就是这4个数的全排列,5就是加入括号的情况,总共5中,4*4*4就是三个符号的种
阅读全文
摘要:题目链接:http://poj.org/problem?id=1481 两次DFS,这里的思路是,没找到*,就说明,有一个骰子,因此,每搜索到一个*,深搜4个方向,并且变为'.',要是搜到'X',就是骰子的点数++,而且将他的四周的'X'变为'.'
阅读全文
摘要:题目链接:http://poj.org/problem?id=1149 题意中有一点要注意,否则构图就会有问题,每个顾客走后,被打开过的那些猪圈中的猪都可以被任意的调换到其他开着的猪圈中。 这里的构图不是单一的相邻,以及容量了,区别在于:他还要求这个容量,和连线。 这里的构图是,以顾客为节点,源点s
阅读全文
摘要:题目链接:http://poj.org/problem?id=1459 解题报告: 电力调度站不涉及流的产生和消耗,不用考虑,Edmonds-Karp算法,就是利用剩余网络和增广路来解决,网络中的最大流。 原理:剩余网络,就是一种回退,构造完在剩余网络后,在剩余网络中找一条增广路,其中的最小流量,每
阅读全文
摘要:题目链接:http://poj.org/problem?id=1419 题目大意:一个无向图,用黑白涂色,相邻的两个点不能图同一种颜色,求黑色的点最多有几个? 刚一看题,完全是图的m着色问题啊,我就套模板,好吧,搞了半天没出来,看了一下别人的博客,原来还是有不同的地方,求最大团。 这里DFS回溯时,
阅读全文
摘要:#include <stdio.h> #include <string.h> #include <algorithm> #define NUM 110 using namespace std; int n; ///图的顶点数 int m; ///可用的颜色数量 int c[NUM][NUM]; //
阅读全文
摘要:题目链接:http://poj.org/problem?id=2387 Dijkstra算法: //求某一点(源点)到另一点的最短路,算法其实也和源点到所有点的时间复杂度一样,O(n^2); 图G(V,E),设置一个顶点集合S,不断贪心选择,指导S扩充为V,计算结束。 贪心选择的方法:节点个数n,源
阅读全文
摘要:题目链接:http://poj.org/problem?id=2864 题意:参照题目 哈哈哈,这个题discuss有翻译哦。水到我不想交了。
阅读全文
摘要:题目链接:http://poj.org/problem?id=2328 解题报告: 缩短区间,soeasy,
阅读全文
摘要:题目链接:http://poj.org/problem?id=2459 题目大意:有C头牛,下面有C行,每头牛放进草地的时间,每天吃一个草,总共有F1个草,想要在第D的时候,草地只剩下F2个草。 解题思路:模拟啊,就像砍树一样的问题,把每天失去的草计算出来,从最后一天往前推。
阅读全文
摘要:题目链接:http://poj.org/problem?id=2259 水题一个,就是要记录一下每个队列是否有人bool[i], #include <iostream> #include <string> #include <queue> #include <map> #include <cstdi
阅读全文
摘要:题目链接:http://poj.org/problem?id=2082 把矩形按照高度一次递增的循序排列,当违反这一规则的时候,更新ans,用新的data替换之前的矩形。然后最后扫一遍。 #include <iostream> #include <stack> #include <cstdio> u
阅读全文
摘要:sort()函数的cmp为函数,priority_queue的cmp为类,具体写法是: #include <iostream> #include <queue> using namespace std; typedef struct { int id;///用户ID int time;///下一次出
阅读全文
摘要:题目链接:http://poj.org/problem?id=2051 ///维持最小堆(优先队列)POJ2051 #include <iostream> #include <string> using namespace std; struct Node { int Now; ///出堆的时间 i
阅读全文
摘要:#define MAX_HEAP_LEN 100 static int heap[MAX_HEAP_LEN]; static int heap_size = 0; ///堆中的元素个数 static void swap (int *a,int *b) { int temp=*a; *a=*b; *b
阅读全文
摘要:ctrl + 1快速修复 ctrl + d 快速删除 ctrl + F11快速运行 ctrl + m 放大工作区 atl + /注释 。。。
阅读全文
摘要:package control; import javax.swing.JFrame; public class DebugTest { public static void main(String[] args) { System.out.println("Hello World!"); Syst
阅读全文