洛谷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;
}
相关推荐
没头脑的男大13 分钟前
关于删除列表的那些事儿
算法
Book思议-23 分钟前
【数据结构实战】线性表的应用
c语言·数据结构·算法·链表
qq_4614893325 分钟前
C++与Qt图形开发
开发语言·c++·算法
richu34 分钟前
结合数学思维来深入内存理解哈希散列的实现原理和处理冲突的逻辑
数据结构·哈希冲突
Yzzz-F42 分钟前
Problem - 2194E - Codeforces
算法
像污秽一样42 分钟前
算法设计与分析-习题12.2
算法·迭代改进·分支界限
x_xbx1 小时前
LeetCode:83. 删除排序链表中的重复元素
算法·leetcode·链表
_小草鱼_1 小时前
【搜索与图论】DFS算法(深度优先搜索)
算法·深度优先·图论·回溯·递归
I_LPL2 小时前
hot100 栈专题
算法·
小菜鸡桃蛋狗2 小时前
C++——类和对象(上)
开发语言·c++