首页 > 代码库 > 魔法(csdn编程挑战)

魔法(csdn编程挑战)

魔法

题目详情:

你拥有3种魔法,可以用第一种魔法把 a 克的沙子变成 b 克金属,可以用第二种魔法把 c 克金属变成 d 克金子,可以用第三种魔法把 e 克金子变成 f 克沙子。

问你能否用初始有限量的沙子、金属、金子得到无限多的金子?

输入格式:

多组数据,每组只有一行包含输入6个整数 a,b,c,d,e,f

(0<=a,b,c,d,e,f<=1000)

输出格式:

每组输出一行,YES和NO表示能否得到无限多的金子。



答题说明:

输入样例

100 200 250 150 200 250

100 50 50 200 200 100

1 1 0 1 1 1

100 1 100 1 0 1

输出样例:

YES

NO

YES

YES


需特判为0的情况。

代码:

#include <cstdio>
#include <cstring>
#include <algorithm>
#include <iostream>
int main()
{
    int a,b,c,d,e,f;
    while(~scanf("%d%d%d%d%d%d",&a,&b,&c,&d,&e,&f))
    {
        if(d==0) printf("NO\n");
        else if(c==0) printf("YES\n");
        else if(b==0) printf("NO\n");
        else if(a==0) printf("YES\n");
        else if(f==0) printf("NO\n");
        else if(e==0) printf("YES\n");
        else if(b*d*f>a*c*e) printf("YES\n");
        else printf("NO\n");
    }
}


魔法(csdn编程挑战)