骑车与走路
- 总时间限制:
- 1000ms
- 内存限制:
- 65536kB
- 描述
- 在北大校园里,没有自行车,上课办事会很不方便.但实际上,并非去办任何事情都是骑车快,因为骑车总要找车、开锁、停车、锁车等,这要耽误一些时间.假设找到自行车,开锁并骑上自行车的时间为27秒;停车锁车的时间为23秒;步行每秒行走1.2米,骑车每秒行走3.0米.请判断走不同的距离去办事,是骑车快还是走路快.
- 输入
- 第一行为待处理的数据的数量n
其后每一行整数为一次办事要行走的距离,单位为米. - 输出
- 对应每个整数,如果骑车快,输出一行"Bike";如果走路快,输出一行"Walk";如果一样快,输出一行"All".
- 样例输入
-
4 50 90 120 180
- 样例输出
-
Walk Walk Bike Bike
#include <iostream> using namespace std; int main (){ int n , i ; //需要办理的事情 float walk ,bike ,Distance ; //申明走路、骑车、办事的距离 cin >> n ; for( i = 0; i < n ; i++){ cin >> Distance; walk = Distance / 1.2; bike = Distance/3.0 + 27 + 23 ; if( walk > bike) cout << "Bike"<< endl; else if ( bike > walk) cout << "Walk" << endl; else if ( bike == walk) cout << "All" << endl; } return 0 ; }
解题思路:很简单,我就不说了,除出来的数进行对比就行了。
这里有一个地方需要大家注意的是,我们在申明变量的时候,不要去使用double,因为这样双精度浮点数会保留小数点后多位,感谢郝助教。
例如:浮点数你输入3最后储存的结果可能变成了2.9999999或者3.00000001,其他的地方就没什么可以说的了。