摘要:
题目链接: http://codeforces.com/contest/672/problem/C 题意: 公园里有两个人一个垃圾桶和n个瓶子,现在这两个人需要把所有的瓶子扔进垃圾桶,给出人,垃圾桶,瓶子的坐标,问两个人需要走的最短距离和。 题解: 首先必须要有一个人先去检一个瓶子,然后走到垃圾桶, 阅读全文
摘要:
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5691 题解: 和tsp用的状压差不多,就是固定了一些访问顺序。 dp[i][j]表示前cnt个点中布满状态i且最后一个为j的状态的最大乘积和。 则有dp[i|(1<<k)][k]=max(dp[i|( 阅读全文
摘要:
题目链接: http://www.lydsy.com/JudgeOnline/problem.php?id=4443 题解: 二分答案,判断最大匹配是否>=n-k+1; 阅读全文
摘要:
题目链接: http://codeforces.com/contest/675/problem/A 题意: 给你一个等差数列,问你b是不是其中的一项。 即是否存在大于等于0的整数k使得a+k*c==b。只要求(b-a)%c==0&&(b-a)/c>=0就可以了。 但是,我就是写成了二分。。而且还写搓 阅读全文
摘要:
题目链接: http://codeforces.com/contest/675/problem/D 题意: 给你一系列点,叫你构造二叉搜索树,并且按输入顺序输出除根节点以外的所有节点的父亲。 题解: n有10^5,如果直接去建树,最会情况会O(n^2)t掉。 因此我们需要利用一些二叉搜索树的性质: 阅读全文
摘要:
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5693 题解: 一种朴实的想法是枚举选择可以删除的两个或三个数(其他的大于三的数都能凑成2和3的和),删掉。然后一直递归下去。但删除子串的操作不容易,而且搜索复杂度有点大,记忆化判相同子序列也不容易。 阅读全文
摘要:
题目链接: http://www.codeforces.com/contest/666/problem/B 题意: 给你n个城市,m条单向边,求通过最短路径访问四个不同的点能获得的最大距离,答案输出一个满足条件的四个点。 题解: 首先预处理出任意两点的最短距离,用队列优化的spfa跑:O(n*n*l 阅读全文
摘要:
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5695 题解: 求出字典序最大的拓扑序。然后把求好的数列翻转过来就是满足条件的数列,然后模拟求一下value就可以了。 阅读全文
摘要:
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5151 题解: 有n个椅子,编号为1到n。 现在有n个同学,编号为1到n,从第一个同学开始选择要坐的位子,并且这个同学不能坐同时满足下面三个条件的椅子。 1、左右都有相邻的位子 2、左右相邻的位子都是空 阅读全文
摘要:
题目链接: http://www.lydsy.com/JudgeOnline/problem.php?id=4554 题解: 如果没有硬石头的话,就是’*‘点对应的行列建边,然后跑最大匹配 硬石头什么作用?它可以让同一行或同一列存在不只一个炸弹,因此我们可以将一个硬石头的上下拆成两列,左右拆成两行, 阅读全文