[vijos1763] wormhole
来源:互联网 发布:前端模块化编程 编辑:程序博客网 时间:2024/06/10 05:11
题目链接
题解:二分距离,局部不满足就放,由局部最优推出整体最优
#include <iostream>#include <cstdio>#include <cmath>#include <climits>using namespace std;#define INF INT_MAX-100000const int M=200005;int n,l,r,mid,T,ans,k;int w[M],d[M];void init(){ cin>>n; for(int i=1;i<=n;i++){ scanf("%d",&w[i]); d[i]=w[i]-w[1]; }}inline bool cl(int pos,int x){ for(k=pos;k<=n;k++) if(w[k]-w[pos]>x) break; for(int j=k;j<=n;j++) if(w[j]-w[k-1]>x) return false; return true;}bool ok(int x){ for(int i=2;i<=n;i++) { if(d[i]>x){ if(cl(i,x)) return true; return false; } } return true;}void work(){ l=1,r=INF; while(l<=r){ mid=(l+r)>>1; if(ok(mid)) r=mid-1,ans=mid; else l=mid+1; } printf("%d\n",ans);}int main(){ //freopen("data.in","r",stdin); //freopen("true.out","w",stdout); cin>>T; while(T--){ init(); work(); }}
0 0
- [vijos1763] wormhole
- [vijos1763]Wormhole
- USACO wormhole
- usaco wormhole
- Wormhole大盘
- ZOJ 3613 Wormhole Transport
- Vijos P1763 Wormhole
- USACO1.3.5 Wormholes (wormhole)
- USACO1.3.5 Wormholes (wormhole)
- usaco 1.3.7wormhole
- poj 3259 Wormhole【bellman_ford】
- wormhole make 问题
- usaco 1.3.5 wormhole
- usaco1.3.4 Wormhole
- Wormhole、MergeDelta优化
- wormhole-section1.3
- USACO1.3 wormhole
- ZOJ3613-Wormhole Transport
- Linux下C++操作Redis
- KMP(DFA)
- java 线程
- linux命令--wget
- JavaScript学习笔记一
- [vijos1763] wormhole
- HDU-3038-How Many Answers Are Wrong
- 玲珑杯-【See car】
- libGDX的实体框架Ashley简介
- opencv实现图片动画效果
- HTML补充知识点
- HTML-基础语法
- 二叉树系列---recover_binary_search_tree
- python核心编程&序列