洛谷P1007独木桥(暴力枚举)

题目描述:

说明提示:

思路:

本题的核心思想在于:两人相遇后,转身不计入时间,所以我们可以看作直接穿过去,那么一个人走下桥的时间有两种,一个是本身所在位置x,另一个是l+1-x,易知桥左侧的面向左边走更快,桥右侧的面向右边走更快

撤离独木桥的最小时间是所有人最小时间的最大时间

撤离独木桥的最大时间是所有人最大时间的最大时间

AC代码:

cpp 复制代码
#include <iostream>
#include <algorithm>
using namespace std;
int l, n;
int x;
int maxx, minn;
int main() {
	cin >> l >> n;
	for (int i = 0; i < n; i++) {
		cin >> x;
		if (x > l / 2) {
			minn = max(minn, l + 1 - x);
			maxx = max(maxx, x);
		}
		else {
			minn = max(minn, x);
			maxx = max(maxx, l + 1 - x);
		}
	}
	cout << minn << ' ' << maxx << endl;
}
相关推荐
我爱Jack10 分钟前
时间与空间复杂度详解:算法效率的度量衡
java·开发语言·算法
米饭「」12 分钟前
C++AVL树
java·开发语言·c++
☆璇32 分钟前
【数据结构】栈和队列
c语言·数据结构
心愿许得无限大44 分钟前
Qt 常用界面组件
开发语言·c++·qt
GiraKoo1 小时前
【GiraKoo】C++17的新特性
c++
Rockson1 小时前
C++如何查询实时贵金属行情
c++·api
shenyan~1 小时前
关于 c、c#、c++ 三者区别
开发语言·c++
DoraBigHead2 小时前
小哆啦解题记——映射的背叛
算法
mit6.8242 小时前
[vroom] docs | 输入与问题定义 | 任务与运输工具 | json
c++·自动驾驶
Heartoxx2 小时前
c语言-指针与一维数组
c语言·开发语言·算法