poj 3579 二分加尺取法
来源:互联网 发布:淘宝现货怎么抢最快 编辑:程序博客网 时间:2024/06/10 01:12
#include<stdio.h>#define N 100000+16int d[N];int n;void qsort(int a[],int l,int r)//快速排序{int i,j,x;if(l<r){i=l;j=r;x=a[i];while(i<j){while(i<j&&a[j]>x)j--;if(i<j)a[i++]=a[j];while(i<j&&a[i]<=x)i++;if(i<j)a[j--]=a[i];}a[i]=x;qsort(a,l,i-1);qsort(a,i+1,r);}}int main(void){int s,l,r,m,i,j,ans; while(~scanf("%d",&n)){s=(n-1)*n/4;if(((n-1)*n/2)&1)s++;for(i=1;i<=n;i++)scanf("%d",&d[i]);qsort(d,1,n); l=0;r=d[n]-d[1];while(l<r){ans=0;m=(l+r)/2;j=1;for(i=2;i<=n;i++)//尺取法{while(d[i]-d[j]>m)j++;ans+=(i-j);}if(ans<s)l=m+1;elser=m;}printf("%d\n",l);}}
0 0
- poj 3579 二分加尺取法
- POJ 3061 Subsequence 二分或者尺取法
- POJ 3061 Subsequence 二分或者尺取法
- POJ 3061 Subsequence(二分/尺取法)
- poj 3061 Subsequence(二分,尺取法)
- POJ 3061-Subsequence(尺取法,二分)
- POJ - 3061 Subsequence(前缀和+二分和尺取法)
- POJ 3061 Subsequence(二分查找 or 尺取法)
- 【poj 3061】Subsequence 【尺取法】or【前缀和+二分】
- POJ 2566 尺取法
- poj 2100 尺取法
- POJ 2566 尺取法
- poj 3061 尺取法
- poj 3061 尺取法
- poj 2566 尺取法
- poj 3061 尺取法
- poj 3320 尺取法
- poj 3320 尺取法
- 按钮在界面最下面
- Oracle EBS Forms数字签名无法验证卡住解决方法
- 前端工程师常用可视化工具
- 关于echarts图表传json对象,树状图传参数的建议
- 慕课-程序设计与算法(大学先修课)-郭炜-第三周练习题
- poj 3579 二分加尺取法
- Angular 1.6版本路由中/#!/的解决方法
- ExpressBox 3450
- MySQL中的约束,添加约束,删除约束,以及一些其他修饰
- iOS delegate使用
- Java三大注释
- Ubuntu下安装ffmpeg完整教程
- Git使用之Windows环境下配置
- 高压互锁