icpc:problems:noip_tg_2015_跳石头
problems | |
---|---|
名称 | 跳石头 |
题目编号 | 2015 NOIP TG |
题目链接 | luogu.com.cn/… |
来源 | CCF |
算法分类 | 二分答案 |
难易程度 | 一般般 |
跳石头
想法
判断某个最短的举例是否符合条件。
代码实现
#include<cstdio> const int N = 50010; int l, n, m; int line[N]; bool check(int x) { int now = 0, cnt = 0; for(int i=1; i<=n; ++i) { if(line[i] - line[now] < x) cnt ++; else now = i; } return cnt <= m; } int main() { scanf("%d %d %d", &l, &n, &m); for(int i=1; i<=n; ++i) scanf("%d", &line[i]); int right = l, left = 0, mid, ans; while(left<right) { mid = (left+right+1)/2; if(check(mid)) { left = mid; } else right = mid - 1; } printf("%d", left); return 0; }
/app/www/public/data/pages/icpc/problems/noip_tg_2015_跳石头.txt · 最后更改: 2024/01/28 12:03 由 温婕莺