码迷,mamicode.com
首页 > 其他好文 > 详细

[题解]Mail.Ru Cup 2018 Round 1 - A. Elevator or Stairs?

时间:2018-10-19 14:20:00      阅读:288      评论:0      收藏:0      [点我收藏+]

标签:hid   col   mes   class   关闭   需要   main   ref   scan   

【题目】

A. Elevator or Stairs?

【描述】

Masha要从第x层楼去第y层楼找Egor,可以选择爬楼梯或者坐直升电梯。已知爬楼梯每层需要时间t1;坐直升电梯每层需要时间t2,直升电梯开门或者关门一次需要时间t3,当前直升电梯在第z层楼,直升电梯门是在关闭状态的。如果爬楼梯总时间严格小于坐直升电梯,则选择爬楼梯并输出YES,否则选择坐直升电梯并输出NO。

数据范围:1<=x,y,z,t1,t2,t3<=1000

【思路】

爬楼梯总时长:t1*abs(x-y)

坐直升电梯总时长:t2*(abs(x-z)+abs(x-y))+t3*3

注意:直升电梯门需要开关一共三次

【我的实现】

技术分享图片
 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 #include <cmath>
 5 #include <algorithm>
 6 
 7 using namespace std;
 8 
 9 inline int My_abs(int x)
10 {
11     return x < 0 ? -x : x;
12 }
13 
14 int main()
15 {
16     int x, y, z, t1, t2, t3;
17     int a, b;
18     scanf("%d%d%d%d%d%d", &x, &y, &z, &t1, &t2, &t3);
19     a = t1 * My_abs(y-x);
20     b = t2 * (My_abs(x-z) + My_abs(x-y)) + 3 * t3;
21     //cout << a << ‘ ‘ << b <<endl;
22     if(b <= a)
23         printf("YES");
24     else
25         printf("NO");
26     return 0;
27 }
View Code

【评测结果】

技术分享图片

[题解]Mail.Ru Cup 2018 Round 1 - A. Elevator or Stairs?

标签:hid   col   mes   class   关闭   需要   main   ref   scan   

原文地址:https://www.cnblogs.com/CQBZOIer-zyy/p/9815673.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!