学校的华为杯程序设计比赛题目

报名参加了学校的acm程序设计竞赛,想试试自己的水平,没想到我还是太嫩了点,平时实践的太少了,到真正要编时才感觉到力不从心。

一共出了四道题目,现选择其中的一题与大家共享。
                                                                            

消灭食人树问题 时间限制(普通/Java):1000MS/3000MS                    运行内存限制:65536KByte

问题描述
传说中的一棵食人树入侵xxx(校名,略去不表),xxxSCDA 协会借本次大赛的机会呼唤英雄斩杀邪树,拯救全校师生。

现在的形势是:这棵食人树有许多枝蔓,斩杀它的唯一方法就是用xxx的震校宝剑将其所有枝蔓砍断。当食人树的枝蔓数不少于 a 时,学校的震校宝剑每使用一次,将会恰好成功砍断 a 个枝蔓;当食人树的枝蔓数少于 a 时,震校宝剑每使用一次,要么恰好成功砍断 a-1
个枝蔓(不幸的是,我们的英雄会献出生命),要么不能砍断任何枝蔓。食人树如果没有被砍断所有枝蔓,就会长出 b 个枝蔓。

经过SCDA协会的努力,我们发现了两把可以使用的震校宝剑,分别用 a1、b1和a2、b2 表示,a1、a2 表示一次至多成功砍断的枝蔓数,b 1、b 2 表示食人树一次能够长出的枝蔓数。食人树共有 N 个枝蔓。现在给定 N、a1、b1、a2、b2,请问是否可以消灭食人树,我们的英雄能否活着。
                                                                       
问题输入
输入包括多个测试用例,首先给出测试用例数 C,接着给出 C 个测试用例。每一个测试用例包括一行,依次给出 N、a1、b1、a2、b2。1≤N≤50, 1≤a 1 ,b1 ,a2, b2≤10000。


问题输出
输出包括多行,对于每个测试用例输出一行,如果我们的英雄能够杀死食人树、并且还活着,则输出 0;如果我们的英雄能够杀死食人树、但付出了生命,则输出 1;如果不能杀死食人树,则输出 2。

样例输入
3
20 7 1 8 5
3 4 1 2 2
100 102 0 103 0

样例输出
0
1
2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值