http://acm.hdu.edu.cn/showproblem.php?pid=4004这道题讲的是青蛙在限定步骤之内跳过河,所以判断最小的每次跳的步长。思路理解:找到每块石头之间的最大值为石头最小步长,最大值当然就是河宽了。所以剩下了就是用二分枚举了。//我烦的一个错误就是sort函数是从0-...
分类:
其他好文 时间:
2015-05-25 18:32:37
阅读次数:
113
题目:poj 2296 Map Labeler题意:给出以下二维坐标点,然后让你往平面上放正方形,点必须落在正方形上面边的中点或者下面边的中点,正方形不能重叠,可以共用边。问最大正方形边的边长。分析:这种最大化最小值或者最小化最大值的问题,我们都可以种二分+判断的方法来解,这个也不例外,关键是判断部分
我们现在二分枚举边长为diff,然后所有的点就变成了在正方形上面或者下面的问题了,二选一的问题很...
分类:
其他好文 时间:
2015-05-18 18:53:31
阅读次数:
144
题意:
现在有一个n*m的矩阵A,在A中找一个H*H的正方形,使得其面积最大且该正方形元素的和不大于 limit。
思路: 水题
预处理矩形元素和,然后二分枚举最大边长,然后把这边长在整个矩形中试一遍(O(n*m))看是否符合。总时间复杂度O(n*m*log(min(n,m))) 可暴
code:
#include
#include
#include
#include...
分类:
其他好文 时间:
2015-05-16 16:36:24
阅读次数:
97
题目大意:有一个N * N的矩阵,其中Aij = i * i + i * 100000 - 100000 * j + j * j + i * j,问这个矩阵中,第M小的数是多少解题思路:观察这个式子,可以发现j不变的情况下,随着i的增大,Aij也相应增大,由这个受到启发
二分枚举第M小的数,然后按列寻找,找到第一个大于这个数的位置,就可以知道该列中有多少个数是大于这个数的了#include<cs...
分类:
其他好文 时间:
2015-05-14 01:03:26
阅读次数:
192
http://www.lydsy.com/JudgeOnline/problem.php?id=3196分析:
带区间查询和名次询问,线段树套treap操作1: 查询k在区间内的排名。
求出k-1的名次+1就是k的名次操作2:查询区间内排名为k的值。
二分枚举权值,调用操作1操作3:修改某一位值上的数值。
在树上先删除,再插入操作4.查询k在区间内的前驱(前驱定义为小于x,且最大的数)
操...
分类:
其他好文 时间:
2015-05-08 14:55:21
阅读次数:
253
解题报告 之 POJ 2699 The Maximum Number of Strong Kings 最大流 二分 枚举 建图...
分类:
其他好文 时间:
2015-04-25 13:44:54
阅读次数:
216
题意:
给一图,求从点1到n的t条边不相交的路径,目标是最小化最t条路径中的最大边,输出该最大边。
分析:
求最值的问题满足单调性都可以用二分来做,二分是加速的枚举方法。这题二分枚举最大边建图,每次用长度小于等于二分值的边建图并置容量为1,求最大流即可。
代码:
//poj 2455
//sep9
#include
#include
#include
using namespace...
分类:
系统相关 时间:
2015-04-03 09:30:33
阅读次数:
211
利用二分枚举所有 品质
思路想出来比较好写代码:
#include
#include
#include
#include
#include
#include
#include
using namespace std;
const int maxn = 1111;
//种类 名称 价格 价格因子
int n,b;
int cnt;
int min_v,max_v;
struct Th{...
分类:
其他好文 时间:
2015-03-15 13:52:51
阅读次数:
166