上一页 1 ··· 9 10 11 12 13
摘要: poj 3264-Balanced Lineup链接:http://poj.org/problem?id=3264题意说明:有n个数,要求随时统计一定区间上最大值和最小值的差从题意也能看出来是线段树的问题,节点在建立的时候包括区间的最大值与最小值。View Code 1 #include<iostream> 2 #include<stdio.h> 3 #include<string.h> 4 using namespace std; 5 #define N 400005 6 int min(int a,int b) 7 { 8 return a<b?a 阅读全文
posted @ 2012-04-05 19:59 zhenhai 阅读(184) 评论(0) 推荐(0)
摘要: poj 2777-Count Color链接:http://poj.org/problem?id=2777题意是说有一段长为lcm的线段,每段的长度为1cm总共有t种颜色可以用来给它涂色,我们会随时改变某个区间的颜色,并且询问这个区间内共有多少种不同的颜色典型的线段树问题,这其实也体现出了线段树比树状数组比起来的优势,所能统计的信息比树状数组要多,用起来更加灵活。View Code 1 #include<stdio.h> 2 #include<string.h> 3 #define MAX 450000 4 struct node 5 { 6 int l,r; 7 in 阅读全文
posted @ 2012-04-05 16:11 zhenhai 阅读(355) 评论(0) 推荐(0)
摘要: 有一点难度的树形dp,只不过数据量不是很大,应该不会出现超内存和超时的问题dp[i][j]表示以i为根的树中选j个城堡,注意此时父节点i必须要选取了f[i][j]用于临时储存状态,有点像条件背包,树形dp的题想想基本都差不多,和背包都很像,其实做多了dp,也会发现,dp也都一个样View Code 1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 #include<vector> 5 #define city 205 6 using namespace std; 7 vec 阅读全文
posted @ 2012-04-05 09:13 zhenhai 阅读(171) 评论(0) 推荐(0)
摘要: 这道题是我的第一道树形dp,也是最简单的一道树形dp-背包问题,每个点只是考虑选与不选的问题,基本上和0-1背包是一模一样的View Code 1 #include<stdio.h> 2 #include<string.h> 3 #define MAX 1501 4 int pre[MAX],child[MAX];//父节点和儿子节点 5 int dp[MAX][2];//0表示不选,1表示选 6 int min(int a,int b) 7 { 8 return a<b?a:b; 9 }10 int n;11 int used[MAX];12 void fun( 阅读全文
posted @ 2012-04-05 09:07 zhenhai 阅读(245) 评论(2) 推荐(0)
摘要: poj 1155-TELE 链接:http://poj.org/problem?id=1155题意是说一个电视台要转播一场重要的足球赛事,电视台有m个客户端,每个客户端愿意为了观看电视支付一定的费用,但是由于转播塔有限,而且在转播塔到客户端之间需要一定的转播费用,所以电视台为了不赔钱可能无法让所有的客户端都看到赛事,求的是在不赔钱的前提前如何保证让最多的人看到电视典型的树形dp问题,dp[i][j]表示的是在以i为根的树当中选取j个人看电视的最大利润,那么就类似于背包问题了。不过要有一个临时数组去存上一步的状态。View Code 1 #include<iostream> 2 #i 阅读全文
posted @ 2012-04-05 09:01 zhenhai 阅读(318) 评论(0) 推荐(0)
摘要: 欧几里得方程在RSA 算法中,往往要在已知A、N的情况下,求 B,使得 (A*B)%N=1。即相当 于求解B、M都是未知数的二元一次不定方程 A*B-N*M=1 的最小整数解。而针对不定方程ax-by=c 的最小整数解,古今中外都进行过详尽的研究,西方 有著名的欧几里德算法,即辗转相除法,中国有秦九韶的“大衍求一术”。事实上 二元一次不定方程有整数解的充要条件是c为a、b的最大公约数。即当c=1时,a、b 必须互质。而在RSA算法里由于公钥d为素数,素数与任何正整数互质,所以可以通 过欧几里德方程来求解私钥e。欧几里德算法是一种递归算法,比较容易理解:例如:11x-49y=1,求x (a) 1 阅读全文
posted @ 2012-04-04 21:36 zhenhai 阅读(953) 评论(0) 推荐(0)
摘要: 链接地址:http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProblem&problem_id=1058这道题求的是一个工作图完成所需要的最短时间(任何一个end完成就算结束),刚开始看这道题以为是什么dp,但是把图画出来一看发现根本不是树,求最短时间,最短步数,首先想到广搜,注意这里给出的条件是,如果这个点的值是true需要把所有的前序工作都做完之后才可以做这件工作,那么我们对于是true的节点在广搜时何时入队就要进行一下判断,那么什么时候他才可以入队呢?很明显,对应图中的一个点有一个入度,当其前继节点都结束之后他才 阅读全文
posted @ 2012-04-04 21:34 zhenhai 阅读(214) 评论(0) 推荐(0)
上一页 1 ··· 9 10 11 12 13