当前位置: 首页 > news >正文

题解:P1007 独木桥

P1007 独木桥(模拟、贪心)

题意

给定独木桥的长度 \(L\) 、士兵的数量 \(N\) 和每个士兵的坐标,求所有士兵撤离的最短时间和最长时间。

数据范围与约定

对于 \(100\%\) 的数据,满足初始时,没有两个士兵同在一个坐标,\(1\le L\le5\times 10^3\)\(0\le N\le5\times10^3\),且数据保证 \(N\le L\)

题解

这道题有一定思维含量。

注意到:一个士兵如果走到坐标 \(L + 1\) 的位置,需要 \(L + 1 - V\);一个士兵如果走到坐标 \(0\) 的位置,需要 \(V\) 秒(其中 \(V\) 为初始坐标)。

那么这道题就很简单了,最长的时间就是最大的 \(\max(L + 1 - V, V)\);最短的时间就是最大的 \(\min(L + 1 - V, V)\)(至于为什么都是最大的,因为你要等到所有士兵全部撤离)。

注意:题目中的 \(N\) 的取值可以为 \(0\),也就是一开始所有士兵就全部撤离,自然最长时间和最短时间都是 \(0\)。注意细节特判!

CODE

#include <bits/stdc++.h>
using namespace std;
/*====================*/
using lnt = long long;
/*====================*/
#define endl '\n'
/*====================*/
int l, n;
/*====================*/
const int N = 5e3 + 10;
/*====================*/
int arr[N];
/*====================*/
const int INF = 0x3F3F3F3F;
const lnt INFLL = 0x3F3F3F3F3F3F3F3F;
/*====================*/
void Solve()
{cin >> l >> n;if (n == 0){cout << 0 << " " << 0 << endl;return ;}for (int i = 1; i <= n; i++){cin >> arr[i]; }lnt mx = -INFLL, mn = -INFLL;for (int i = 1; i <= n; i++){mx = max(mx, max(l + 1LL - arr[i], 1LL * arr[i]));mn = max(mn, min(l + 1LL - arr[i], 1LL * arr[i]));}cout << mn << " " << mx << endl;
}
/*====================*/
int main()
{ios::sync_with_stdio(false);cin.tie(nullptr),cout.tie(nullptr);int T=1;//cin>>T;while(T--)Solve();return 0;
}
http://www.jsqmd.com/news/330426/

相关文章:

  • Java面试必看:start()和run()哪个才是正确的线程启动方式?
  • 2026年豆包GEO优化服务商权威指南:从技术到效果落地全流程方案
  • 基于Android的学生信息管理系统 开题报告
  • 无忧花客服AI流量赋能创新,重塑体验新标杆
  • 基于Android的校园商品交易系统的 开题报告
  • 2026年2月美妆行业GEO优化公司实测推荐:AI推荐率翻倍策略
  • 终极笔记应用程序Alexandrie - 教程
  • 【极速部署】Ubuntu24.04+CUDA13.0 玩转 VLLM 0.15.0:预编译 Wheel 包 GPU 版安装全攻略
  • - 标题:基于matlab的眼球实时跟踪系统 - 关键词:matlab GUI 数字图像处理 ...
  • 【Linux】线程同步与互斥深度解析:从锁机制到生产者消费者模型 - 实践
  • blender fbx 比例不对 比例调整
  • 向量的叉乘
  • 【易经系列】初九,磐桓,利居贞,利建侯。
  • 2026特钢材料采购全攻略:行业标准+优质厂家+选型避坑
  • 《AI Coding手册:Claude Code、OpenAI Codex、OpenClaw深度解析与实战指南》
  • Vue-skills的中文文档
  • 什么是agent skills
  • 2026第二次周报
  • 【游戏推荐】游乐园建造师 全DLC 送原生画集(Parkitect)免安装中文版
  • 第 2 章:安装和首次配置 —— 完成 Claude Code 的环境搭建
  • Golang高性能轻量博客程序源码
  • 私生子?不!是天选混血小祖宗!
  • 实用指南:JavaScript 的全栈同构渲染(Isomorphic Rendering):前后端响应式状态的序列化与重新激活逻辑
  • IDC平台虚拟主机销售系统源码 全开源
  • 极简网站统计系统PHP源码
  • Android开发工程师职位深度解析与技术面试指南
  • 深入解析宇视科技移动端开发岗位 (RD41) 的技术栈、能力要求与面试准备
  • MATLAB/Simulink电动汽车转弯制动ABS模型,联合直接横摆力矩DYC 转向制动稳定...
  • 焊缝跟踪 abb机器人二次开发 上位机由C#+halcon联合编程 提供源码讲解
  • 大模型训练全流程实战指南工具篇(五)——大模型训练全流程步骤详解与对应工具推荐