摘要: 题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=26881思路:我们可以二分最大危险度,然后建图,由于每个休息点只能用一次,就要拆点,将每个休息点拆点,边容量为1,代表只能使用一次,然后跑最大流验证。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace std; 8 #define MAXN 222 9 #define MAXM 222222 10 #define inf 1que... 阅读全文
posted @ 2013-10-06 22:16 ihge2k 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=25909思路:好久没接触数位dp了=.=!,搞了这么久!一类记忆化搜索。 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 #define FILL(a,b) memset(a,b,sizeof(a)) 7 typedef long long ll; 8 9 ll dp[33][2][33];10 int n,digit[33];11 12 13 ll dfs(int pos. 阅读全文
posted @ 2013-10-06 16:53 ihge2k 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://lightoj.com/volume_showproblem.php?problem=1031思路:dp[i][j]表示从区间i-j中能取得的最大值,然后就是枚举分割点了。 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 #define inf 1<<30 7 #define FILL(a,b) memset(a,b,sizeof(a)) 8 9 int dp[111][111],sum[111];10 int n,x;11 12 int dfs(int l,int r 阅读全文
posted @ 2013-10-06 15:40 ihge2k 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=26864思路:首先是spfa预处理出每个'G'到'H'的最短距离,然后就是二分最大距离,最大匹配验证即可。PS:这道题一开始没什么思路,然后想先最简单的spfa预处理写一下吧,然后写着写着就突然豁然开朗,有思路了!然后就AC了! 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace std; 8 #define MAXN 阅读全文
posted @ 2013-10-06 00:06 ihge2k 阅读(263) 评论(0) 推荐(0) 编辑