解题思路:
注意事项:
参考代码:
import java.util.Scanner;
public class Main{
public static void main(String[]ages)
{
/*如果有魔法值就先用,分两个人,
一个人跑,一个人休息,一秒一秒推,
要是在魔法值回复到10之前跑的人已经到了
或者时间到了,最大值就是跑的人的距离,
否则就使用魔法*/
Scanner sc=new Scanner(System.in);
int magic=sc.nextInt();//魔法
int distance=sc.nextInt();//距离
int time=sc.nextInt();//时间
int time1=time;
int sumrun=0;//跑的人
int sumfly=0;//用魔法的人,不够就休息
while(time!=0)//一秒一秒走
{
time--;
if(magic>=10)//魔法值够,飞吧......
{
magic-=10;
sumfly+=60;
}
else//魔法值不够,分两个人进行
{
magic+=4;//one 从魔法值不够的点原地休息
}
sumrun+=17;//two不能放在else里面,因为当魔法值回复够了的这一秒,跑的人必须 //继续跑,毕竟跑的均速比飞的均速快 列如:30 245 7
if(sumrun<sumfly)//(1)从魔法值不够的点开始走
sumrun=sumfly;//跑的人只能比飞的人快,因为当魔法值不够的时候才分开
if(sumrun>=distance)//跑到了
break;
}
if(sumrun>=distance){
System.out.println("Yes");
System.out.println(time1-time);}//用了多少时间
if(sumrun<distance){
System.out.println("No");
System.out.println(sumrun);}//输出最远距离,无论如何sumrun都大于sumfly(1)
}
}
0.0分
1 人评分
WU-图形输出 (C++代码)浏览:836 |
wu-淘淘的名单 (C++代码)浏览:1532 |
WU-格式化数据输出 (C语言代码)浏览:1818 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:490 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:750 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:645 |
数字游戏 (C++代码)浏览:1240 |
1071题解浏览:585 |
简单的事情 (C语言代码)浏览:679 |
2003年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:639 |