DP
傻蛋的阿简
我,会骗人的江湖骗子
展开
-
Codeforces 100518B DP
传送门:题目 题意: 题意很难懂,而且问了四个问题。 先说一下背景,根据Braess的悖论,人们在去往某一条道路时总会选择耗费时间最少的道路(人们是很机智的),现在有n+1个城市,两边的城市是起点和终点,有且只有两条道路,每一条道路的的每一段都有一个权值,k代表压力指数,如果人们都选择这条道路,而不选择另一条道路,那么这条道路的压力指数k为1,否则为0,除了两边的起点和终点,中间的n-1座城...原创 2018-08-30 20:46:48 · 168 阅读 · 0 评论 -
POJ 3249 拓扑排序 DP
传送门:题目 题意: 给一个图,求两点权值累加和的最大值,点的权值可能为负数。 题解: 我们可以先拓扑排序一下,然后从起点到终点dp一下,记录每个点的答案,然后求答案的最大值 AC代码: #include<iostream> #include<cstring> #include<cstdio> #define debug(x) cout<...原创 2018-09-08 20:20:29 · 482 阅读 · 0 评论 -
爱摸鱼的zhrt 01背包
来源:长沙理工大学2018区域赛个人选拔赛1 题目: 描述: 爱摸鱼的LMJ最近喜欢上了B站的鬼畜视频,为了拉人一起摸鱼,他还喊上了zhrt一起看。 现在zhrt关注了一个UP主,这个UP主投稿了N个视频,每个视频都有一个点击量ViViV_i,zhrt喜欢看点击量高的视频,可是爱学习的zhrt每天又规定了刷题时间, 于是每天只能看T秒视频(没错,要按秒计算~),设第i个视频的时长为t...原创 2018-09-08 21:59:51 · 425 阅读 · 0 评论 -
LIS 最长上升子序列
O(n2)写法O(n^2)写法O(n2)写法 #include <iostream> #include <cstring> #include <cstdio> #include <algorithm> #define debug(x) cout<<#x<<" = "<<x<&原创 2018-10-08 20:46:37 · 399 阅读 · 0 评论 -
POJ 2342 树形dp
题目:传送门 题意: 给一棵树,每个结点都有一个权值,父节点和子节点不能同时出现,求权值和最大值是多少。 题解: 我们要在树上跑个dp,因为问题的模型只有用和不用,所以我们在树上跑01背包那个模型就行了 AC代码: #include<iostream> #include<cstring> #include<vector> using namespace std;...原创 2018-10-10 12:01:35 · 727 阅读 · 0 评论