小韦老师@神犇营-my0095-骑车与走路

小韦老师@神犇营-my0095-骑车与走路

题目:

描述

在码猿星球的校园里,没有自行车,上课办事会很不方便。但实际上。并非去办任何事情都是骑车快,因为骑车总要找车、开锁、停车、锁车等,这要耽误一些时间。假设找到自行车,开锁并车上自行车的时间为 27 秒;停车锁车的时间为 23 秒;步行每秒行走 1.2 米,骑车每秒行走 3.0 米。请判断走不同的距离去办事,是骑车快还是走路快。如果骑车快,输出一行"Bike";如果走路快,输出一行"Walk";如果一样快,输出一行"All"。

输入

输入一行,包含一个整数(<200),表示一次办事要行走的距离, 单位为米。

输出

输出一行,如果骑车快,输出一行"Bike";如果走路快,输出一行"Walk";如果一样快,输出一行"All"。

输入样例1

120

输出样例1

Bike

题解:

思路:

整体思路:
先算出走路所花时间,骑车所花时间,比较这两个时间,选择相应的出行方案。
具体步骤:
1.定义 3 个 int 型的变量,分别代表距离,走路所花时间,骑车所花时间,并
输入距离:

    int dis;  // 距离 
    int time1;  // 走路所花时间 
    int time2;  // 骑车所花时间 
    cin >> dis;  // 输入距离 

2.计算走路所花:

    // 走路所花时间 = 距离 ÷走路的速度,再向上取整 
    // 时间 = (距离 / 1.2) 向上取整(若是 1.1 秒,就算作 2 秒) 
    time1 = ceil(dis / 1.2);

3.计算骑车所花时间:

    // 骑车所花时间 = (距离 ÷骑车的速度)(向上取整) + 开锁时间 + 锁车时间
    // 骑车所花时间 = (距离 / 3.0)(向上取整) + 27 + 23 
    time2 = ceil(dis / 3.0) + 27 + 23; 

4.若走路所花时间小于骑车所花时间,则输出 walk;若骑车所花时间小于走路所花时
间,则输出 Bike;若两者时间一样多,则输出 ALL。
注意:
ceil 是向上取整函数。

完整代码:
#include <bits/stdc++.h>

using namespace std;

int main() {

	int dis;  // 距离 
	int time1;  // 走路所花时间 
	int time2;  // 骑车所花时间 
	cin >> dis; 
	// 走路所花时间 = 距离 ÷走路的速度,再向上取整 
	// 时间 = (距离 / 1.2) 向上取整(若是 1.1 秒,就算作 2 秒) 
	time1 = ceil(dis / 1.2); 
	// 骑车所花时间 = (距离 ÷骑车的速度)(向上取整) + 开锁时间 + 锁车时间
	// 骑车所花时间 = (距离 / 3.0)(向上取整) + 27 + 23 
	time2 = ceil(dis / 3.0) + 27 + 23; 
	// 若走路所花时间小于骑车所花时间,则输出 walk 
	// 若骑车所花时间小于走路所花时间,则输出 Bike
	// 若两者时间一样多,则输出 ALL 
	if (time1 < time2) cout << "Walk";
	else if (time1 == time2) cout << "All";
	else cout << "Bike";
	
	return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值