二分
Stayaccept
这个作者很懒,什么都没留下…
展开
-
51nod1090
#include #include using namespace std; int binsearch(int a[],int n,int x) { int low,high,mid; low=0;high=n-1; while(low { mid=(low+high)/2; if(a[mid]==x)原创 2015-04-01 14:12:56 · 588 阅读 · 0 评论 -
poj2773(容斥+二分)
链接:点击打开链接 题意:求第K个与N互素的数 代码: #include <map> #include <set> #include <queue> #include <string> #include <math.h> #include <vector> #include <stdio.h> #inclu...原创 2019-04-10 23:49:49 · 171 阅读 · 0 评论 -
poj3685(二分套二分)
链接:点击打开链接 题意:给出一个N*N的矩阵A,A[i][j]的值等于i2 + 100000 × i + j2 - 100000 × j + i × j,求这个矩阵中第M小的数 代码: #include #include using namespace std; long long const INF=0x3f3f3f3f3f3f3f; long long N; long原创 2015-12-14 20:13:23 · 1637 阅读 · 2 评论 -
poj3258
链接:点击打开链接 题目:一条长L的河上,除了起点和终点还有N个石子,分别距离起点距离di,求去掉M个石子后相邻的最小距离的最大值 代码: #include #include #include #include #include using namespace std; const int INF=0x3f3f3f3f; int D[50005]; int L,N,原创 2015-12-09 15:07:52 · 484 阅读 · 0 评论 -
poj3579
链接:点击打开链接 题意:求由∣Xi - Xj∣ (1 ≤ i < j ≤ N).组成的数列的中位数 代码: #include #include #include #include using namespace std; long long X[100005]; long long N; int judge(long long d){ int i,sum;原创 2015-12-14 20:08:03 · 459 阅读 · 0 评论 -
poj1759
链接:点击打开链接 题意:有N个在第一象限的点,给出第一个点的高度,每个点的高度满足公式Hi = (Hi-1 + Hi+1)/2 - 1,(1 代码: #include #include #include using namespace std; const int INF=0x3f3f3f3f; int N; double A,ans; double judge(do原创 2015-12-14 20:17:27 · 590 阅读 · 0 评论 -
51nod1243
链接:点击打开链接 题意:一个码头中有N艘船和N个木桩,船的长度为2*X,码头的宽度为M,N个木桩的位置(相对码头左岸的位置)会在数据中给出。船和船之间不能重叠,即每艘船的船头不能超过上一艘船的船尾,当然也不能超出码头的两岸。船和木桩之间用绳子连接,并且1个木桩只能栓1条船,绳子的一头拴在木桩上,另一头拴在船的中间。而船中间到木桩的距离,就是所需的绳子的长度。由你根据给出的条件,排列船的位置,使原创 2015-12-12 18:24:40 · 401 阅读 · 0 评论 -
poj3273
链接:点击打开链接 题意:给出N个数,分成M部分(不能调换顺序),使得分成的M部分中和的最大值最小 代码: #include #include using namespace std; const int INF=0x3f3f3f3f; int N,M; int x[1000005]; int judge(int d){ int i,sum,cou; su原创 2015-12-10 13:04:27 · 311 阅读 · 0 评论 -
poj3104
链接:点击打开链接 题意:有n件湿衣服和一个烘干机,现在想要把它们都烘干,如果使用烘干机每分钟可以去除k单位的水,如不使用烘干机每分钟也会自然掉1单位的水,给出n件衣服的含水量,求出最少用多长时间可以全部烘干 代码: #include #include #include using namespace std; const long long INF=0x3f3f3f3f;原创 2015-12-10 12:59:07 · 553 阅读 · 0 评论 -
51nod1001
#include #include int find(int num[],int n,int x) { int low,high,mid; low=0;high=n-1; while(low { mid=(low+high)/2; if(num[mid]==x) return 1;原创 2015-04-01 14:14:49 · 829 阅读 · 0 评论 -
51nod1080
#include #include using namespace std; long long num[50000]; long long find(long long a[],long long n,long long x) { long long low,mid,high; low=0;high=n-1; while(low {原创 2015-04-01 14:20:06 · 546 阅读 · 0 评论 -
hdu6609(树状数组+二分)
链接:点击打开链接 题意:给你一个长度为的数组和一个,求出对每一个最少删除~中多少个元素,使得剩余的~ 中的元素的和小于等于 代码: #include <map> #include <set> #include <queue> #include <string> #include <math.h> #include <v...原创 2019-09-26 11:31:18 · 211 阅读 · 0 评论