洛谷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;
}
相关推荐
灵晔君2 分钟前
【Linux】进程控制(一)——进程创建、进程终止与进程等待
linux·c语言·算法
ShineWinsu8 小时前
对于C++:IO流状态的详细解析
c++·面试·io·cin·io流状态·goodbit·failbit
数模竞赛Paid answer9 小时前
2026年中青杯数学建模A题数学建模论文智能评估系统与多智能体优化方法求解全过程论文及程序
算法·数学建模·中青杯
银-豆豆9 小时前
数据结构与算法-动态规划、回溯与贪心
算法·动态规划
Lzg_na10 小时前
constexpr的优势
c++
想吃火锅100511 小时前
【leetcode】200. 岛屿数量
算法·leetcode·职场和发展
王维同学11 小时前
进程模块枚举、映像身份与线程启动地址关联
c++·windows·安全
hold?fish:palm11 小时前
24 回文链表
数据结构·c++·链表
举手11 小时前
Dispatcher模块剖析
linux·c++
Nil20812 小时前
leetcode 54螺旋矩阵
算法·leetcode·矩阵