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

UVa 571 Jugs

UVa 571 Jugs
📅 发布时间:2026/6/24 4:22:27

题目描述

题目要求解决水壶问题。给定两个容量分别为CaC_aCa​和CbC_bCb​的水壶(Ca≤CbC_a \le C_bCa​≤Cb​),以及目标水量NNN(N≤CbN \le C_bN≤Cb​)。允许操作:

  • fill A:将AAA壶装满
  • fill B:将BBB壶装满
  • empty A:倒空AAA壶
  • empty B:倒空BBB壶
  • pour A B:将AAA壶中的水倒入BBB壶,直到AAA空或BBB满
  • pour B A:将BBB壶中的水倒入AAA壶,直到BBB空或AAA满
  • success:表示目标达成

需要输出一系列操作步骤,使得最终BBB壶中有恰好NNN加仑水。输入保证有解。

输入格式

输入包含多行,每行三个正整数CaC_aCa​、CbC_bCb​、NNN,以文件结束符(EOF\texttt{EOF}EOF)终止。

输出格式

对于每个测试用例,输出一系列操作,每行一个,最后一行是success。

样例

输入

3 5 4 5 7 3

输出

fill B pour B A empty A pour B A success fill B pour B A empty A pour B A success

题目分析

本题的核心是使用BFS\texttt{BFS}BFS或经典数学方法求解。由于CaC_aCa​和CbC_bCb​互质,可以通过不断将AAA壶的水倒入BBB壶来得到所有余数。

算法

  • 循环执行以下步骤直到BBB壶中有NNN加仑:
    1. 若BBB已满,清空BBB。
    2. 若AAA为空,装满AAA。
    3. 将AAA倒入BBB。
  • 输出相应操作。

正确性

由于CaC_aCa​和CbC_bCb​互质,通过重复将AAA倒入BBB,可以生成所有模CbC_bCb​的余数。

复杂度分析

每个操作O(1)O(1)O(1),最多O(Cb)O(C_b)O(Cb​)步。

代码实现

// Jugs// UVa ID: 571// Verdict: Accepted// Submission Date: 2016-09-02// UVa Run Time: 0.000s//// 版权所有(C)2016,邱秋。metaphysis # yeah dot net#include<bits/stdc++.h>usingnamespacestd;intmain(){cin.tie(0);cout.tie(0);ios::sync_with_stdio(false);intCa,Cb,N;while(cin>>Ca>>Cb>>N){intA=0,B=0;while(true){if(B==Cb){cout<<"empty B\n";B=0;}if(A==0){cout<<"fill A\n";A=Ca;}if(A==N){cout<<"success\n";break;}cout<<"pour A B\n";B+=A;if(B>Cb){A=B-Cb;B=Cb;}elseA=0;if(A==N||B==N){cout<<"success\n";break;}}}return0;}

相关新闻

  • SMUDebugTool终极指南:免费开源AMD Ryzen处理器调试工具完全教程
  • AI写专著必备攻略:4款工具助力,快速生成20万字专业专著!
  • NS-USBLoader终极指南:快速搞定Switch游戏安装与系统注入的4个关键步骤

最新新闻

  • 【AI应用实战-WorkBuddy】效率翻倍:我的 WorkBuddy 工作流分享(十八)
  • 【模块实现 03】ImGui 游戏内菜单:DX12 渲染路径的完整落地
  • 呆啵宠物DyberPet:让二次元角色活在你的桌面,打造专属数字伙伴的终极指南
  • linux系统编程(一):pthread常用函数
  • 建筑石材选型的数据分析:用pandas对比8类石材性能
  • 别再找 Prompt 模板了:提示词的本质,是你和 AI 的任务契约

日新闻

  • 终极指南:如何用shadPS4在电脑上免费畅玩PS4游戏
  • 打造个性化Instagram Clone:主题定制与用户体验优化技巧
  • 未来展望:RoseTTAFold-All-Atom的发展路线图与社区支持资源汇总

周新闻

  • Visual C++运行库修复终极指南:5分钟快速解决Windows软件启动错误
  • 手把手教你构建统计局地区经济数据爬虫:从环境搭建到数据持久化全指南
  • 2026多Agent深度解析:用AI团队替代单一模型,四种架构实战落地

月新闻

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

关于尧图

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

服务项目

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

快速链接

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

联系方式

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

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