
二分查找
big up
这个作者很懒,什么都没留下…
展开
-
uvaLive3635
题目大意: 分pie给小朋友,有N个派,F+1个小朋友,求每个小朋友可以分到的最大的派,派不可以是拼凑起来的。思路: 由于受到了上一题(组装电脑)的影响,所以这一题看起来感觉类似,也想着用二分做,二分出每个小孩子可以分到的派的大小,然后判断这个大小是否可行。只需将每个派的面积处以这个大小,所有的值加起来看是否大于F+1。代码:#include <iostream>using namespace原创 2016-01-23 14:59:57 · 543 阅读 · 0 评论 -
uva1121
题目大意: 找出大于等于limit的最少的数字个数。思路: 一共有N个数字,用一个sum数组把位于它前面的所有数字的和存进去(从1- N),然后判断sum[N]是否大于limit,如果不是的话就表示此题无解,就要输出0,否则就用二分查找,查找最短的长度。代码:#include <iostream>using namespace std;#include <stdio.h>#include原创 2015-12-27 13:45:41 · 310 阅读 · 0 评论 -
uvalive4625(dp + 二分)
题目大意: 给你一串 n 个数,表示n个球,给你这n个球的重量,要你把这n个数分成 m - 1 段,每段的数字个数都是偶数,对于每一段,它的半段数字个数都不超过d,找出一种分发,使所有的这些半段的重量的最小值,并输出这个最小值。思路: 详细见代码解释 代码:#include <iostream>using namespace std;#include <cstring>#include原创 2016-04-27 15:07:49 · 570 阅读 · 1 评论 -
uvalive3608(二分 + DP)
题目大意: 给出a,b两个串,a串可以分成若干串,问将a的每个分开的串分别转化为b串,最少的操作数是多少思路: 二分答案,避免超时。 dp[i][j]表示在a串的第i个字符和j串的第j个字符最少的操作数是多少。 那么当a的i + 1个字符和b的j + 1个字符相等时候,它的最小操作数是和a到i个字符和b到j个字符的值是一样的。 那么当a到i个字符和b到j + 1个字符的时候,此时最小的操作原创 2016-05-10 23:15:29 · 3088 阅读 · 0 评论