POJ-3579
来源:互联网 发布:考研网络班 编辑:程序博客网 时间:2024/06/05 05:11
这题可用二分解,暴力的O(n^2)肯定是必挂的,对可能的结果值做二分,然后check这个值是否符合条件
#include<cstdio>#include<algorithm>using namespace std;namespace{typedef long long ll;int N, dat[100000];ll K;bool check(int num){ll count = 0;for (int i = 0; i < N; i++){int index = upper_bound(dat, dat + N, dat[i] + num) - dat;count += index - i - 1;}return count >= K;}void solve(){sort(dat, dat + N);ll total = 1LL * N * (N - 1) / 2;K = total & 1 ? total / 2 + 1 : total / 2;int ub = dat[N - 1] - dat[0];if (ub == 0)puts("0");else{int lb = 0, mid;ub++;while (lb + 1 < ub){mid = (lb + ub) / 2;if (check(mid))ub = mid;elselb = mid;}printf("%d\n", ub);}}}int main(){while (scanf("%d", &N) != EOF){for (int i = 0; i < N; i++)scanf("%d", &dat[i]);solve();}return 0;}
0 0
- POJ-3579
- 【POJ】3579
- POJ-3579-Median
- Median - POJ 3579 二分
- POJ 3579 Median
- POJ 3579- Median
- POJ 3579 Median
- POJ - 3579 Median 二分
- poj 3579(二分)
- poj 3579 二分+lower_bound
- poj-3579 Median
- poj 3579 二分
- POJ 3579 Median
- poj 3579 二分
- 【poj 3579】 Median
- POJ 3579(二分)
- POJ 3579 Median(二分)
- POJ 3579 median
- Java之基于字符流的文件写入与读取
- HP连接MYSQL
- 性能优化(六) - 数据库
- 从简单实例开始,学会写Makefile(一)
- Shoot - HDR合成
- POJ-3579
- java一些面试题
- MIT-BIH ECG 心电数据的下载和读取图解
- 二叉树知道前序中序或者中序后序求另外一个排列
- Cocos2d-x学习笔记(二)-------->CCDirector导演类
- ACM_UVA1586
- Untrusted Patrol
- Windows8 上面安装Oracle 11g 时,安装程序报错:[INS-13001]环境不满足最低要求
- 图片剪裁