只要求输出一种答案,所以假设最后是在B里面实现结果。
不停从B倒水到A,分类考虑B中剩余水与A的大小情况
模拟题目想不到解法还是比较坑的啊
#include<stdio.h>
int main()
{
int a,b,n,ans;
while(~scanf("%d%d%d",&a,&b,&n))
{
ans=0;
if(n==b) printf("fill B\nsuccess\n");
else
{
printf("fill B\npour B A\n");
ans=b-a;
while(ans!=n)
{
if(ans>a)
{
printf("empty A\npour B A\n");
ans=ans-a;
}
else
{
printf("empty A\npour B A\nfill B\npour B A\n");
ans=b+ans-a;
}
}
printf("success\n");
}
}
return 0;
}