zoj 1005 Jugs

只要求输出一种答案,所以假设最后是在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
success
");
        else
        {
            printf("fill B
pour B A
");
            ans=b-a;
            while(ans!=n)
            {
                if(ans>a)
                {
                    printf("empty A
pour B A
");
                    ans=ans-a;
                }
                else
                {
                    printf("empty A
pour B A
fill B
pour B A
");
                    ans=b+ans-a;
                }
            }
            printf("success
");
        }
    }
        return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。http://xiang578.top/

原文地址:https://www.cnblogs.com/xryz/p/4848069.html