FOJ
oDoJi
这个作者很懒,什么都没留下…
展开
-
FOJ Problem 1111 Radar Installation
题目大意:在海边有N个小岛,他们距离海岸的距离为Dn。现在准备在海岸线上布置若干个雷达,雷达半径为Di。问如何设置使雷达数量最少且覆盖全部小岛。解题思路:如何求出雷达的位置是本题的关键,换个角度看,我们可以以小岛为圆心,雷达半径为半径画圆,圆在海岸线上所截取的线段可以作为一个区间,在这个区间内的任何位置放置雷达都可以覆盖该小岛。然后求出每一个小岛对应的区间,利用贪心算法就可以将问题转换为区间取点问题原创 2017-03-28 20:27:15 · 803 阅读 · 0 评论 -
FOJ Problem 1082 最大黑区域
题目大意:设计一个程序寻找最大黑区域。黑区域由黑像素组成,一个黑区域中的每个像素至少与该区域中的另一个像素相邻,规定一个像素仅与其上、下、左、右的像素相邻。两个不同的黑区域没有相邻的像素。一个黑区域的面积是其所包含的像素的个数。解题思路:简单的深度优先搜索问题,由一个黑色像素点开始搜索直到没有黑色像素点与之相连,就结束这一区域的搜索,并把这一区域的点标记为已读。重复这一过程直到把所有点都找遍。程序代原创 2017-03-29 21:29:20 · 820 阅读 · 0 评论 -
FOJ Problem 1004 Number Triangle
题目大意:输入一个数字金字塔,求从塔尖到塔底的一条路径,使这条路径上的元素和最大。解题思路:简单的动态规划问题,对于一个2层的塔,求最大的路径就是把第一层的每个路径都计算一遍,比较最大值。然后推广到一个N层高的塔,从第N-1层到第N层的路径同2层塔一样,计算N-1层到下一层两个点的路径最大值,保存在N-1层的点里,这样就把N层塔问题转化为N-1层塔问题,重复压缩直到塔尖,这时塔尖的值就是最大路径和。原创 2017-03-30 20:25:48 · 437 阅读 · 0 评论 -
HDU 2756-HOJ-Unique Snowflakes
题目大意:给定一串长度为N的数字串,找出最长的不重复连续子序列解题思路:这道题刚开始的时候可能会想到用遍历的方式来判断是否重复,但是这样做的时间复杂度比较高。所以我们可以采用 滑窗 的方法来求解。滑窗:取left,right 记录当前序列的左右界限,开始向右遍历(right++),如果发现遍历到的数字是重复的,就把left右移一位(left++),直到没有重复。重复该过程直到right==N原创 2017-03-27 21:16:46 · 385 阅读 · 0 评论