尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

“四人过河”经典问题

“四人过河”经典问题
📅 发布时间:2026/6/18 21:48:10

一、什么是“四人过河”经典问题
最早版本见于 MBA/奥数/信息学趣题:
N 个人(通常 N=4)要从左岸到右岸,只有一条小船,容量至多 2 人;

  • 船划行时间 = 船上所有人中最大的那一项;
  • 船不能空驶,每次必须有人把船划回来;
  • 问:让所有人到达对岸的最短总时间是多少?

二、通用数据设定
给出数组 t[1..n](升序排列),t[i] 表示第 i 个人单独划船所需时间。
例:1、2、5、10(经典 MBA 版)或 1、2、4、8(本题版)。


三、核心观察

  1. 每次往返至少“送过去 1 人、带回 1 人”,净增 1 人。
  2. 要把最慢的两个“大数”送过去,通常有两种宏观策略:
    S1 “快艇快递”——用最小的 1 号当船夫,来回接人;
    S2 “双慢合并”——让两个最慢的一起过河,避免他们分别拖时间。

四、两种基础子 routine
设 t1 ≤ t2 ≤ … ≤ tn

策略 操作 耗时 说明
A t1,t2 → t1 ← t1,t3 → t1 ← … 2·t1 + t2 + t3 + … 1 号来回接
B t1,tn → t1 ← t1,tn-1 → t1 ← 2·t1 + tn + tn-1 把最慢两个分批送
C t1,t2 → t1 ← tn-1,tn → t2 ← t1,t2 → t2 + t1 + tn + t2 + t2 = 2·t2 + t1 + tn 双慢合并经典四步

策略 C 往往比 策略 B 更省——用“次小”代替“最小”把船带回来,减少大数出现次数。


五、通用贪心算法(适用于任意 n ≥ 3)

  1. 排序 t[1..n] 升序。
  2. 剩余未过河人数 ≥ 4 时,反复比较:
    cost1 = 2·t1 + t_{k-1} + t_k  (策略 B)
    cost2 = 2·t2 + t1 + t_k    (策略 C)
    选较小者累加,并把 k ← k-2(最慢两人已处理)。
  3. 剩余 3 人时,固定用 t1+t2+t3(一步送回)。
  4. 剩余 2 人时,一次 t1,t2 → 结束。

时间复杂度:O(n log n)(排序主导)。


六、对本题 1、2、4、8 套用
排序后 [1,2,4,8]

  • k=4:cost1=2·1+4+8=14,cost2=2·2+1+8=13 → 选 13,累加 13,剩 [1,2]
  • k=2:直接 2 → 累加 2
    总最短 = 13 + 2 = 15(与前面手算一致)。

七、记忆口诀

“双慢合并优于单慢分批,只剩三人用一锅端。”

掌握以上模板,无论人数、时间数组怎样变化,都可 30 秒内写出最优方案。

相关新闻

  • 完整教程:C#语言入门详解(18)传值、输出、引用、数组、具名、可选参数、扩展方法
  • DevOps On Kubernetes
  • Dify实战训练营(基础班)(全免费值得收藏)

最新新闻

  • swipe终极指南:如何在Jetpack Compose中实现专业级滑动操作
  • Flop与GraphQL/Relay集成:构建现代化API的完整方案
  • Paralayout AspectRatio实战:轻松处理宽高比布局的完整教程
  • Pike与主流IAC工具集成指南:Terraform、CloudFormation最佳实践
  • 2026年值得信赖的安全教育培训机构推荐,实力与口碑双优之选 - mypinpai
  • Markoff:macOS上终极轻量级Markdown预览器完全指南

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号