HDU 4950

水题。。。。。但是还是wa了几发。。。

感觉有的时候有点鲁莽。。。。糙。

刚开始就考虑了一种情况,就是打完k轮后,加上休息的一轮,若是还不能造成伤害,那就输了。

但是还有几种情况,一是可能第一轮就打死了,还没等他回血,而是在某轮没等他回血的时候就死了。

好吧,刚刚发现分类可以是攻击和回血的大小值的判断。。。

然后就是担心超整型了用了int64,可能是不用的吧。

#include <stdio.h>
#define ll __int64
int main()
{
    ll h,a,b,k;
    ll cas=0;
    while(scanf("%I64d%I64d%I64d%I64d",&h,&a,&b,&k)!=EOF&&h+a+b+k)
    {
        printf("Case #%I64d: ",++cas);
        if(a>=h) printf("YES\n");
        else
        {
            ll tmp;
            tmp=(a-b)*k+b;
            if(tmp>=h) printf("YES\n");
            else
            {
                if(tmp<=0) printf("NO\n");
                else
                    if(tmp-2*b>0) printf("YES\n");
                else printf("NO\n");
            }
        }
    }
    return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值