A27690. 办事时间(time)
填空题
中等
知识点
题目描述
办事时间(time)
题目描述
在小明的校园里,没有自行车,上课、办事会很不方便。但实际上,并非去办任何事情都是骑车快,因为骑车总要找车、开锁、停车、锁车等,这要耽误一些时间。假设小明找到自行车,开锁,上车起步的时间为27秒;停车锁车的时间为23秒;步行每秒行走1.2米,骑车每秒行走3.0米。请判断n种距离去办事的情况,每种情况是骑车快还是走路快?
输入格式
第一行输入一个正整数,表示n种距离。1≤n≤106,每次距离不超过109。
接下来n行,每行一个正整数,表示一次办事要行走的距离,单位为米。
输出格式
输出n行,每次如果骑车快,输出Bike;如果走路快,输出Walk;如果一样快,输出All。
Samples
输入数据 1
2
1
1000
输出数据 1
Walk
Bike
样例解释
两组输入,第一组距离为1,走路花费时间为0.833333秒,骑车为50.333333秒,因为走路更快,所以输出“Walk”;第二组距离为1000,走路花费时间为833.333333秒,骑车为383.333333秒,因为骑车更快,所以输出“Bike”。
数据范围

参考答案
#include <iostream>
using namespace std;
double a; // 存储读取的距离
double b, c; // 存储步行和骑车所需的时间
int main() {
int n; //定义1个int变量n
scanf("%d", &n); // 读入n的值,表示有n种距离
for (int i = 0; i < n; i++) { // 循环n次
a = b = c = 0; // 每计算一个新的距离,a、b、c都清零,避免之前的值影响这一次计算
scanf("%lf", &a); // 读取当前的距离值
b = a / 1.2; // 步行所需时间 = 距离/步行的速度
c = a / 3.0 + 27.0 + 23.0; // 骑车所需时间 = 距离/骑车的速度+找车开锁、停车锁车的时间
if (c > b) // 比较步行时间和骑车时间,如果骑车时间大于步行时间,输出“Walk”
printf("Walk\n");
else if (b > c) // 如果骑车时间小于步行时间,输出“Bike”
printf("Bike\n");
else if (b == c) // 如果两者时间相等,输出“All”
printf("All\n");
}
return 0;
}
上一题
下一题