二分算法
WINDZLY
我不知道最后会得到什么样的结果,但我知道不努力我什么也得不到
展开
-
二分算法
//用第一个代码会返回不确定的位置;即当查找这个的书有多个位置,那么返回的值不确定;/*#include <bits/stdc++.h> using namespace std; int main() { int a[10]={0,1,1,1,2,3,4,5,6,7}; int r=0,l=9; int k=1; int m; while(r&l...原创 2018-03-16 21:56:23 · 289 阅读 · 0 评论 -
P1182 数列分段`Section II`(二分加贪心最大值最小化)
题目描述 对于给定的一个长度为N的正整数数列 A-iA−i ,现要将其分成 M(M≤N)M(M≤N) 段,并要求每段连续,且每段和的最大值最小。 关于最大值最小: 例如一数列 4 2 4 5 142451 要分成 33 段 将其如下分段: [4 2][4 5][1][42][45][1] 第一段和为 66 ,第 22 段和为 99 ,第 33 段和为 11 ,和最大值为 99 。 将...原创 2018-08-01 22:54:06 · 319 阅读 · 0 评论 -
P1316 丢瓶盖 (二分最小值最大化)
题目描述 陶陶是个贪玩的孩子,他在地上丢了A个瓶盖,为了简化问题,我们可以当作这A个瓶盖丢在一条直线上,现在他想从这些瓶盖里找出B个,使得距离最近的2个距离最大,他想知道,最大可以到多少呢? 输入输出格式 输入格式: 第一行,两个整数,A,B。(B<=A<=100000) 第二行,A个整数,分别为这A个瓶盖坐标。 输出格式: 仅一个整数,为所求答案。 ...原创 2018-08-01 23:42:50 · 262 阅读 · 0 评论 -
洛谷 P1631 序列合并(数学或 二分//堆)
题目描述 有两个长度都是N的序列A和B,在A和B中各取一个数相加可以得到 N^2N2 个和,求这 N^2N2 个和中最小的N个。 输入输出格式 输入格式: 第一行一个正整数N; 第二行N个整数 A_iAi , 满足 A_i\le A_{i+1}Ai≤Ai+1 且 A_i\le 10^9Ai≤109 ; 第三行N个整数 B_iBi , 满足 B_i\le B_{i+1}B...原创 2018-08-13 23:53:46 · 198 阅读 · 0 评论 -
牛客假日团队赛8 Telephone Lines
题目的大意就是从1到n的路选择k条将权值设置为0,然后找出最大的权值为花费的价值 二分枚举+ 最短路 ac代码如下 #include <bits/stdc++.h> typedef long long ll; typedef long long ld; using namespace std; const ll maxn = 1e5 + 7;...原创 2019-08-02 00:40:05 · 249 阅读 · 0 评论