-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathKangaroo.py
58 lines (43 loc) · 1.48 KB
/
Kangaroo.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# You are choreographing a circus show with various animals. For
# one act, you are given two kangaroos on a number line ready to
# jump in the positive direction (i.e, toward positive infinity).
#
# The first kangaroo starts at location x1 and moves at a rate
# of v1 meters per jump.
# The second kangaroo starts at location x2 and moves at a rate
# of v2 meters per jump.
# You have to figure out a way to get both kangaroos at the same
# location at the same time as part of the show. If it is possible,
# return YES, otherwise return NO.
#
# For example, kangaroo 1 starts at x1 = 2 with a jump distance
# v1 = 1 and kangaroo 2 starts at x2 = 1 with a jump distance of
# v2 = 2. After one jump, they are both at x = 3,
# (x1 + v1 = 2 + 1, x2 + v2 = 1 + 2), so our answer is YES.
#
# Link: https://www.hackerrank.com/challenges/kangaroo/problem
#!/bin/python3
import math
import os
import random
import re
import sys
# Complete the kangaroo function below.
def kangaroo(x1, v1, x2, v2):
if (x1 > x2 and v1 > v2) or (x1 < x2 and v1 < v2) or (x1 != x2 and v1 == v2):
return 'NO'
result = (x1 - x2) % (v2 - v1) == 0
if (result):
return 'YES'
else:
return 'NO'
if __name__ == '__main__':
fptr = open(os.environ['OUTPUT_PATH'], 'w')
x1V1X2V2 = input().split()
x1 = int(x1V1X2V2[0])
v1 = int(x1V1X2V2[1])
x2 = int(x1V1X2V2[2])
v2 = int(x1V1X2V2[3])
result = kangaroo(x1, v1, x2, v2)
fptr.write(result + '\n')
fptr.close()