poj3104(二分)
来源:互联网 发布:淘宝网卖家中心登录 编辑:程序博客网 时间:2024/05/20 03:40
#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>using namespace std;typedef long long ll;ll n, k;ll a[200000];bool dix(int mid)//枚举的是自然风干时间{ ll time = 0; if(k == 1) return true; for(int i = 0; i < n; i++){ if(a[i] > mid) //枚举自然风干时间 time += (a[i] - mid + k - 2)/ (k - 1);// 设这机洗时间与自然风干时间两段时间分别是x1和x2,那么有mid=x1+x2,ai<=k*x1+x2则x1 >= (a[i]-x2)/k } if(time > mid) return true;//所以但凡机洗总时间大于自然风干说明自然风干时间小了则左区间要变大 return false;//若机器洗时间小于自然风干时间说明自然风干时间大了有区间要变小}int main(){ while(scanf("%lld", &n) != EOF){ ll maxn = 0; for(int i = 0; i < n; i++) { scanf("%lld", &a[i]); if(maxn < a[i]) maxn = a[i]; } scanf("%lld", &k); ll mid, left = 0, right = maxn; while(left < right - 1){ mid = (left + right)/2; if(dix(mid)){ left = mid; } else right = mid; } printf("%lld\n", right);//输出最小 } return 0;}
0 0
- poj3104 Drying(二分)
- poj3104(二分)
- POJ3104 Drying(二分答案)
- poj3104(二分判断可行性)
- poj3104 二分
- POJ3104 二分
- poj3104二分
- poj3104 二分
- 二分搜索--poj3104
- POJ3104 Drying [二分]
- POJ3104 Drying 二分搜索
- POJ3104:Drying(二分)
- [二分]poj3104 Drying
- poj3104
- poj3104
- POJ3104
- POJ3104 Drying (二分的力量2)
- CSU-ACM2017暑假集训2-二分搜索 poj3104-drying
- selenium+java+testng分层设计(四)
- 14:怪盗基德的滑翔翼
- 2016_4_16/G [codeforces] C
- 公共基础知识整理
- Gradle's dependency cache may be corrupt 解决办法
- poj3104(二分)
- 操作系统学习笔记(一)
- PAT 1001. 害死人不偿命的(3n+1)猜想 (15)
- JavaScript之内存和性能(事件)
- 动态规划练习-2(最大子矩阵)
- JavaScript变量的作用域
- Python break 和 continue 语句
- 第八届蓝桥杯 java B组 包子凑数
- 455. Assign Cookies