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

独木桥 Java

import java.util.*;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int l = sc.nextInt();int n = sc.nextInt();// 没有士兵的情况if (n == 0) {System.out.println("0 0");return;}// 都初始化为最小值,因为要求最长的时间,也就是最后一个士兵离开时的时间int minTime = Integer.MIN_VALUE, maxTime = Integer.MIN_VALUE;for (int i = 1; i <= n; i++) {int x = sc.nextInt();int left = x, right = l - x + 1; // 每个士兵向左和向右走的路程minTime = Math.max(minTime, Math.min(left, right));maxTime = Math.max(maxTime, Math.max(left, right));}System.out.println(minTime + " " + maxTime);}
}

每两个士兵相遇都回头,换个角度想,其实可以想象成两个士兵无视对方直接穿过去了,这样就变得很简单了。只要遍历每个士兵,求出他们每个人选择向左或向右走时,哪个方向路程最大(最小),然后求出最后一个士兵离开时的时间,就是离开独木桥的最大(最小)时间了。

http://www.xdnf.cn/news/610651.html

相关文章:

  • 基于SpringBoot+Vue的社区医院信息平台设计与实现
  • 软考中级软件设计师——计算机系统篇
  • STM32+腾讯物联网平台OTA升级详细教程
  • 华为OD机试_2025 B卷_爱吃蟠桃的孙悟空(Python,100分)(附详细解题思路)
  • 从逆流监测到智慧用电:ADL200N-CT系列单相导轨表赋能家庭绿色能源
  • ubuntu设置开机不输密码笔记
  • 解决Vue项目依赖错误:使用electron-vite重建
  • 提升开发运维效率:原力棱镜游戏公司的 Amazon Q Developer CLI 实践
  • 使用clickhouse的ReplacingMergeTree引擎表做活跃玩家信息表
  • Unity 打包程序全屏置顶无边框
  • 宽松相等(==) 的转换规则(仅考虑基本数据类型)
  • 怎么判断一个Android APP使用了Ionic这个跨端框架
  • 智能交通红绿灯系统(Python)
  • TCP 三次握手,第二次握手报文丢失会发生什么?
  • IP隧道技术中数据包头部的变化分析:必然增加的封装机制
  • (15)关于窗体的右键菜单的学习与使用,这关系到了信号与事件 event
  • 特殊的完全平方数
  • 【MySQL】 数据库基础数据类型
  • 【c++】: c++11线程库
  • 【Hexo】3.主题
  • Kafka 集群中,Broker和Controller的关系
  • TPDS-2014《Efficient $k$-means++ Approximation with MapReduce》
  • Python匿名函数(lambda)全面详解
  • 黑马k8s(十三)
  • 【机械视觉】Halcon—【二、Halcon算子全面介绍(超详细版)】
  • 免费AI工具整理
  • HarmonyOS NEXT 使用 relationalStore 实现数据库操作
  • 文章记单词 | 第113篇(六级)
  • 数据挖掘算法大汇总
  • AI推介-大语言模型LLMs论文速览(arXiv方向):2024.12.20-2024.12.25