摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1602 解:lca的模板,我用的是倍增。 程序: 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1647 解:记得这道题在我初二的时候,老师给过一道差不多的题,唯一区别在于,那道题是打枪影响五个,这道题是翻瓦片。 唔,首先这道题是一个搜索,我们发现我们先确定了第一行哪些要翻,哪些不要翻,之 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1646 这道题我刚开始就直接硬生生地广搜,然后妥妥地TLE了,后来乖乖地加了一些剪枝。。。 具体程序里看吧,反正就是典型的广搜,但是有一些细节 程序: 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1601 解:完全最小生成树,先找一个最便宜的牧场挖口井,然后开始的距离都为打井的费用,然后用运输的费用去更新。 程序: 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1642 解:用f[i]来表示我们第i段时间挤奶的情况下,在此之前(包括自身),最多能产多少奶。 最后找到最大的f[i]. 程序: 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1641 解:floyd裸题。。。 程序: 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1636 解:线段树裸题(都不用更新。。。st就好了) 程序: 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1635 解:其实它每给出一组关系x~y,都代表着x~y间的牛的最理想身高减小了1,所以我们只需用差分来维护相邻牛的关系就行,比如,f[x+1]--,f[y]++; 这里还有一个条件,就是h[y 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1634 解:大力贪心。。。 每次取d/t最大的那个。 程序: 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1631 解:先跑一遍最短路,把所有边都反过来以后,再跑一遍 程序: 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2582 解:这道题是老师给我们拿来当做考试的,结果考的时候,我在判断无向图联通块时,满脑子tarjan。。。完全忘了并查集。。。最后用了深搜,然而竟然92分?? 这道题就是用并查集判断出分别的 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1626 赤裸裸的最次生成树,已有的边赋为0就好了,我用了prim(因为不熟) 不过有个神坑点,算坐标中乘法会超出int范围,所以在里面也要转为double(当然不排除你一开始用的就是long 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1618 解:我看了半天觉得很像完全背包,可是又没法按套路来,于是翻了别人的题解,发现真是啊!!(一道神奇的背包) 我们发现也许最终的重量会超过H,但超过的部分绝对会小于maximum(p[i] 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1614 解:首先我们先用一次dijkstra来判断出特殊情况,比如说路不联通,或者说所需连的电线数小于等于提供的电线数。 然后,我们二分我们所需支付的那根最长的电线长度x,再做一遍dijkst 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1613 解:设f[i][j]表示第i分钟当前疲劳度为j时的最大距离, 首先,我们上一轮休息,现在当然也可以休息,所以f[i][0]=f[i-1][0]; 如果我们现在选择休息,f[i][j]= 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1612 解:莫名就成了图。。。我们把A赢了B当做A到B的一条单向边,然后从每个点都dfs一次,(我直接用floyd,反正接受的了n^3...) 能到的点就加上一,最后如果哪个点能到它和它能到的 阅读全文
摘要:
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1611 解:直接广搜。。。 程序: 阅读全文