洛谷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;
}
相关推荐
崇山峻岭之间9 分钟前
C++ Prime Plus 学习笔记033
c++·笔记·学习
xxxxxmy17 分钟前
同向双指针(滑动窗口)
python·算法·滑动窗口·同向双指针
暗然而日章23 分钟前
C++基础:Stanford CS106L学习笔记 7 类
c++·笔记·学习
释怀°Believe24 分钟前
Daily算法刷题【面试经典150题-5️⃣图】
算法·面试·深度优先
List<String> error_P25 分钟前
数据结构:链表-单向链表篇
算法·链表
ss27331 分钟前
ConcurrentHashMap:扩容机制与size()方法
算法·哈希算法
2401_8603195238 分钟前
在React Native鸿蒙跨平台开发中实现一个冒泡排序算法并将其应用于数据排序,如何进行复制数组以避免直接修改状态中的数组
javascript·算法·react native·react.js·harmonyos
im_AMBER39 分钟前
Leetcode 72 数组列表中的最大距离
c++·笔记·学习·算法·leetcode
编程饭碗1 小时前
【Java循环】
java·服务器·算法
曾几何时`1 小时前
归并排序(一)
数据结构·算法·leetcode