测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A633. 倒水问题

编程题 普及-
知识点

题目描述

给你两个容量为n和m的水桶和无限多的水,两个桶初始为空,现在需要盛出容量为k的水,由于水桶没有刻度,你只能进行如下几种操作
1、 FILL x 表示将第x个水桶装满,x为1或2
2、 DROP x 表示将第x个水桶清空,x为1或2
3、 POUR x y 表示将第x个桶的水全部倒入y桶,x空了或y满了停止,x,y为1或2
问最少需要的操作次数及操作过程,若有多种操作方法可以完成,输出任意一种即可。

输入格式

一行三个整数n,m,k

输出格式

第一行一个整数x表示最少操作次数
接下来n行,每行一个操作
若无法做到输出impossible

输入输出样例

输入 #1
3 5 4
输出 #1
6
FILL(2)
POUR(2,1)
DROP(1)
POUR(2,1)
FILL(2)
POUR(2,1)

说明/提示

0<n,m,k<100
上一题 去做题 下一题