上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 29 下一页
摘要: 题目链接:https://www.luogu.com.cn/problem/P1024 首先在(-100,100)上暴力枚举,如果有f(i)*f(j)<=0,那么答案一定在[i,j]上,在这里记录下f在[i,j]上的单调性,进行二分。二分结束后继续在(ans,100)上暴力枚举,重复是上述操作。 A 阅读全文
posted @ 2020-11-01 15:22 dfydn 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://www.luogu.com.cn/problem/P1351 有n个点,n-1条边,所以是一个无根树。而两点之间的距离为2,所以两点之间有一个中转点,这道题的关键就是枚举这个中转点,而不是两个顶点。 这样每次枚举一个中转点,便枚举与它相邻的所有点,记录下其中最大的、次大的两 阅读全文
posted @ 2020-10-29 22:55 dfydn 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://www.luogu.com.cn/problem/P1073 DFS+DP: 设f[i][0/1], f[i][0]表示走到i点的最小价格,f[i][1]表示走到i点的最大收益(差值)。转移过于简单。 注意DFS中的剪枝。 AC代码: 1 #include<cstdio> 阅读全文
posted @ 2020-10-29 22:30 dfydn 阅读(75) 评论(0) 推荐(1) 编辑
摘要: 题目链接:https://www.luogu.com.cn/problem/P1052 方程比较好像: 设f[i]表示跳到第i个点的最少石子数。 那么f[i]=min(f[i],f[i-j]+vis[i]),vis[i]代表第i个点有没有石子,s<=j<=t。 但是这样的话f的下标大小应为1e9,显 阅读全文
posted @ 2020-10-29 22:24 dfydn 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://www.luogu.com.cn/problem/P1396 注意要用双向边!! 1.二分+DFS: 二分路径最大值,然后DFS,如果边权小于mid,那么可以走,否则不可以走。DFS只需要判断s->t是否连通:跑一边DFS,然后用vis看能否连通。 1 #include<c 阅读全文
posted @ 2020-10-25 21:45 dfydn 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://www.luogu.com.cn/problem/P1807 因为并没有保证1点的入度没有保证为0,所以先将所有的点的dis为0xc0,然后dis[1]=0,dis[n]=-INF。将所有连向1的点的w都设为-100001,这样拓扑到1这个节点时,dis就会被更新为0,然后 阅读全文
posted @ 2020-10-25 20:03 dfydn 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://www.luogu.com.cn/problem/P1137 在有向无环图上,用拓扑排序在O(n)的时间内求出最短/长路,是一个不错的选择(也称拓扑的DP)。 只需要在拓扑排序中让连的点的入度--时更新dis即可。这道题里注意一开始每一个城市都可以以自己为终点到达自己一个, 阅读全文
posted @ 2020-10-25 19:13 dfydn 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://www.luogu.com.cn/problem/P1006 思想同P1004完全相同: P1004:https://www.luogu.com.cn/problem/P1004 思路:https://www.cnblogs.com/New-ljx/p/13866374.h 阅读全文
posted @ 2020-10-23 21:40 dfydn 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://www.luogu.com.cn/problem/P1004 考虑让两个人同时走,设计状态则直接设f[i][j][k][m],表示第一个人走到(i,j),第二个人走到(k,m)时所取数的最大值。 当(i,j)==(k,m)时,即两个人走到同一个点,则这个点其实在第二遍的时候 阅读全文
posted @ 2020-10-23 21:33 dfydn 阅读(84) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://www.luogu.com.cn/problem/P5664 观察题目数据范围,发现前64pts可以用类似状压的思想来做(m<=3)。前84pts可以在O(n^3*m)的时间内完成。100pts需要在O(n^2*m)的时间内做。 总述: 注意总的初始化,初始化要为1,因为后 阅读全文
posted @ 2020-10-23 20:51 dfydn 阅读(76) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 29 下一页