poj 3579 二分
来源:互联网 发布:大芒果论坛新域名 编辑:程序博客网 时间:2024/06/12 01:39
题意:给出N个数,对于存有每两个数的差值的序列求中位数,如果这个序列有偶数个元素,就取中间偏小的作为中位数。N<=100000
然后每次二分一个差值,进行判断
判断的时候每次o(n)遍历,总的复杂度nlogn
#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#define rep(i, j, k) for(int i = j; i <= k; i++)using namespace std;int n, a[100005];int main(){while (cin >> n) {rep (i, 1, n)scanf ("%d", &a[i]); sort(a + 1, a + n + 1); int l = 0, r = a[n], m = (n-1)*n/4; if((n * (n - 1) / 2) % 2) m ++; while(l < r) { int mid = (l + r) >> 1; int j = 1, num = 0;rep (i, 2, n) { while(a[i] - a[j] > mid) j ++; num += (i-j); } if(num >= m) r = mid; else l = mid + 1; }cout << l << endl; } return 0;}
0 0
- Median - POJ 3579 二分
- POJ - 3579 Median 二分
- poj 3579(二分)
- poj 3579 二分+lower_bound
- poj 3579 二分
- poj 3579 二分
- POJ 3579(二分)
- POJ 3579 Median(二分)
- POJ 3579 - Median(二分搜索)
- [POJ 3579] Median (二分答案+二分查找)
- POJ 3579 Median 查找中间值 二分
- poj 3579 Median 二分查找与lower_bound
- POJ 3579 Median (二分搜索)
- POj 3579 Median(二分逼近)
- POJ 3579 Median(2次二分)
- poj 3579 二分加尺取法
- 二分——POJ 3579 Median
- poj (3343)二分匹配+二分
- android 移植 ffmpeg (二) 测试用例
- HTML+CSS学习笔记 (八)
- cropbox + springmvc +ajax 裁剪上传
- 期货交易制度与合约
- 模拟实现auto_ptr,scoped_ptr,shardptr
- poj 3579 二分
- 互联网+工业
- C++基础——深拷贝&浅拷贝
- [JAVA]POI各Jar包的作用
- 用博客这种方式分享学习生活中的收获
- JavaScript读取文件目录信息以及目录下的文件名信息
- 堆、栈、重映射及内存分配理解
- 多尺度滑动窗口 muti-scale
- Web应用程序的目录结构