随笔分类 - acm--HDOJ
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=3594判断给定的图是否是强连通的,并且每条边都只属于一个连通分量.判断强连通只需要判断缩点之后顶点数是否为1即可,然后在缩点的过程中,如果已经产生环,并且当前结点的父节点还有父节点,则必定有多个环,最后还要判断每个...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=2767求至少添加多少条边才能变成强连通分量.统计入度为0的点和出度为0的点,取最大值即可. 1 #include 2 #include 3 #include 4 #include 5 #inclu...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1827缩点后,统计入度为0的点有多少个,那么这些点都是需要被通知的,但是这些点可能也是被缩的,所以每次在这个点所属集合找一个最小值即可. 1 #include 2 #include 3 #include ...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=3836判断至少需要加几条边才能使图变成强连通把图缩点之后统计入度为0的点和出度为0的点,然后两者中的最大值就是需要连的边,例如,假设入度为0的点多,那么每次把出度为0的点连一条边指向入度为0的点,就构成了一个环,所...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1269判断一个图是不是强连通,缩点之后判断顶点数是不是为1即可. 1 #include 2 #include 3 #include 4 #include 5 #include 6 #inclu...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=5007 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include10 #i...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=5128给出n个点,求n个点组成两个矩形的最大面积.矩形必须平行x轴,并且不能相交,但是小矩形在大矩形内部是可以的,面积就为大矩形的面积.我是枚举一条对角线,然后去找另外两个点是否在坐标中存在这样就可以确定一个矩形,...
阅读全文
摘要:有m种不同的句子要组成一首n个句子的歌,每首歌都有一个美丽值,美丽值是由相邻的句子种类决定的,给出m*m的矩阵map[i][j]表示第i种句子和第j种句子的最大得分,一首歌的美丽值是由sum(map[i][i+1],map[i+1][i+2]....)初始给出n个句子的值,为正就不能改变,为负表示可...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1565两道题只是数据范围不同,都是求的最大点权独立集.我们可以把下标之和为奇数的分成一个集合,把下标之和为偶数的分成一个集合,然后构造一个源点向其中一个集合连边,另一个集合向汇点连边.权值都为P[i][j].然后由...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=2222求目标串出现了几个模式串. 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include ...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1068因为没有指定性别,所以要拆点,把i拆分i和i’ 那么U=V-M (M是最大匹配,U最大独立集,V是顶点数)2U=2V-2M 所以 U=n-M'/2. (没怎么看明白) 但是不这样会wa. 1 #include...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1151在一个城市里有n个地点和k条道路,道路都是单向的,并且不存在环.(DAG)现在伞兵需要去n个地点视察,伞兵只能沿着路的方向走,问最少需要多少伞兵。DAG的最小路径覆盖是指找最小数目的互相不相交的有向路径,满足...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1150有两种机器,A机器有n种模式,B机器有m种模式,现在有k个任务需要执行,没切换一个任务机器就需要重启一次,如果任务i在机器A上执行,A机器需要一个对应的模式A,如果在机器B上执行,机器A需要一个模式B.一直就...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1698n个数初始每个数的价值为1,接下来有m个更新,每次x,y,z 把x,y区间的数的价值更新为z(1 2 #include 3 #include 4 #include 5 #include 6 ...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1532求最大的流量,用dinic算法就好。 1 // Rujia Liu 2 // 因为图较大,所以采用Dinic而不是EdmondsKarp 3 // 得益于接口一致性,读者无须理解Dinic就能使用它。 ...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1394很基础的线段树.先查询在更新,如果后面的数比前面的数小肯定会查询到前面已经更新过的值,这时候返回的sum就是当前数的逆序数.这样查询完之后得到初始数列的逆序数,要求得所有序列的最小逆序数,还需要循环一次.设初...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1251建树之后 查询即可.G++提交 ME不知道为什么,c++就对了。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include ...
阅读全文
摘要:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1126http://acm.hdu.edu.cn/showproblem.php?pid=1005注意上面一题和下面一题的区别,上面A,B可能取负数,但是mod跟c++中%是...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=2059初始把起点和终点也算做充电站,设dp[i]是到第i个充电站的最短时间,那么dp[n+1]即是乌龟到达终点的最短时间.每次到达第i个点,j:0-i-1;去找能不能用从第j个充电站直接到达 i 来更新最短时间。注...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=2058求1-N多少个连续字段和等于M.假设 从i开始长度为k的字段和等于M,那么 ( i+ i+k-1) * k/2=M即(2*i+k-1)*k==2M 那么 从k 2 #include 3 int main()...
阅读全文

浙公网安备 33010602011771号