问题描述

邓老师有有 2 个容量分别为 n 单位、m 单位的没有刻度的杯子。初始,它们都是空的。

邓老师给了你 t 分钟时间。每一分钟,他都可以做下面 4 件事中的任意一件:

  1. 用水龙头装满一个杯子。
  2. 倒空一个杯子。
  3. 把一个杯子里的水倒到另一个杯子里,直到一个杯子空了或者另一个杯子满了。
  4. 什么都不做。

邓老师希望最后能获得 d 个单位的水,假设最后两个杯具中水量的总和为 x,那么邓老师的不满意度就为 |d-x|。

你希望邓老师尽可能地满意,于是请你计算邓老师的不满意度最小是多少。

输入格式

一行 4 个整数 n,m,t,d,分别表示两个杯具的容量、时间限制、以及邓老师的期望值。

输出格式

一行一个整数,表示邓老师最小的不满意度。

样例输入

7 25 2 16

样例输出

9

样例解释

你可以在第 1 分钟用水龙头装满任意一个杯子,并在第 2 分钟什么都不做,即可让邓老师的不满意度为 9。

可以证明不存在更优的解。

一. 伪代码

算法二十二:倒水问题相关推荐

  1. 国科大学习资料--人工智能原理与算法-第十二次作业解析(学长整理)

    国科大学习资料–人工智能原理与算法-第十二次作业解析(张文生老师主讲)(14.14)

  2. 12_JavaScript数据结构与算法(十二)二叉树

    JavaScript 数据结构与算法(十二)二叉树 二叉树 二叉树的概念 如果树中的每一个节点最多只能由两个子节点,这样的树就称为二叉树: 二叉树的组成 二叉树可以为空,也就是没有节点: 若二叉树不为 ...

  3. 强化学习经典算法笔记(十二):近端策略优化算法(PPO)实现,基于A2C(下)

    强化学习经典算法笔记(十二):近端策略优化算法(PPO)实现,基于A2C 本篇实现一个基于A2C框架的PPO算法,应用于连续动作空间任务. import torch import torch.nn a ...

  4. OpenCV学习笔记(二十一)——绘图函数core OpenCV学习笔记(二十二)——粒子滤波跟踪方法 OpenCV学习笔记(二十三)——OpenCV的GUI之凤凰涅槃Qt OpenCV学习笔记(二十

    OpenCV学习笔记(二十一)--绘图函数core 在图像中,我们经常想要在图像中做一些标识记号,这就需要绘图函数.OpenCV虽然没有太优秀的GUI,但在绘图方面还是做得很完整的.这里就介绍一下相关 ...

  5. (原创)无废话C#设计模式之二十二:总结(针对GOF23)

    无废话C#设计模式之二十二:总结(针对GOF23) 比较 设计模式 常用程度 适用层次 引入时机 结构复杂度 Abstract Factory 比较常用 应用级 设计时 比较复杂 Builder 一般 ...

  6. OpenCV学习(二十二) :反向投影:calcBackProject(),mixChannels()

    OpenCV学习(二十二) :反向投影:calcHist(),minMaxLoc(),compareHist() 参考博客: 反向投影backproject的直观理解 opencv 反向投影 颜色直方 ...

  7. 自然语言处理系列二十二》词性标注》词性标注原理》词性介绍

    注:此文章内容均节选自充电了么创始人,CEO兼CTO陈敬雷老师的新书<分布式机器学习实战>(人工智能科学与技术丛书)[陈敬雷编著][清华大学出版社] 文章目录 自然语言处理系列二十二 词性 ...

  8. JAVA基础知识总结:一到二十二全部总结

    >一: 一.软件开发的常识 1.什么是软件? 一系列按照特定顺序组织起来的计算机数据或者指令 常见的软件: 系统软件:Windows\Mac OS \Linux 应用软件:QQ,一系列的播放器( ...

  9. 无人驾驶汽车系统入门(二十二)——使用Autoware实践激光雷达与摄像机组合标定

    无人驾驶汽车系统入门(二十二)--使用Autoware实践激光雷达与摄像机组合标定 单目相机分辨率高,我们可以使用各种深度学习算法完成对目标检测,但是缺乏深度,坐标等信息.激光雷达能够获得目标相当精确 ...

  10. (二十二)访问者模式详解(伪动态双分派) - 转

    作者:zuoxiaolong8810(左潇龙),转载请注明出处. 本次LZ和各位分享一下访问者模式,从场景.设计初衷以及实现方面来说,访问者模式算是LZ即将写到的24种设计模式当中,最复杂也是最难理解 ...

最新文章

  1. 解读万方学术检索——SimCSE、Sentence-BERT…
  2. python自然语言的背景_PYTHON 自然语言处理
  3. Java FilePermission getActions()方法与示例
  4. Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (6) - 流水线前端微熔合/宏熔合
  5. Android Studio插件安装
  6. windows编译libevent
  7. java中有效关键字_java中有效的关键字
  8. 阿里云 Code Pipeline 体验
  9. VC9.VC10.VC11...各对应什么版本的VS,以及含义
  10. Gartner 魔力四象限 -- 应用安全检测
  11. html文字溢出怎样处理,css文本溢出处理
  12. jquery 处理页面弹出层查询数据等待的操作(gif图片加载等待)
  13. 用pyinstaller打包python文件(.py)为可执行文件(.exe)
  14. JavaEE知识点总结详细版(一)计算机是如何进行工作的
  15. Linux学习 高级网络配置
  16. H5C3动画实例,通过基于jQuery的fullpage插件完成
  17. 2022最新树莓派4B学习笔记:系统备份 OpenCV SPI TFT HTML
  18. 在ECharts树图中实现搜索高亮和自动展开
  19. 健身体训练课程营销活动宣传视频PR模板 MOGRT
  20. Flink Blink Planner和Older Planner的区别

热门文章

  1. 【Python数据类型展示】
  2. python数据类型及转换
  3. php 五行查询,五行查询,五行缺什么查询,生辰八字五行查询,金木水火土命查询表...
  4. 从Google Maglev到UCloud Vortex,如何造一个牛逼的负载均衡?
  5. Spring boot Shiro 用户认证
  6. 张量学习(6):张量代数
  7. 前端一些好用的小小工具【免费的素材、颜色网站】,持续更新中…
  8. Map与Json之间的转换(fastjson)
  9. IDEA快捷键CTRL+ALT+L格式化失效
  10. PDF预览完整解决方案及各种兼容(VUE版)