Programming/코테
Codility - Lesson 3 - 1. FrogJump
코어어오뇬
2020. 12. 18. 17:42
Task description
A small frog wants to get to the other side of the road. The frog is currently located at position X and wants to get to a position greater than or equal to Y. The small frog always jumps a fixed distance, D.
Count the minimal number of jumps that the small frog must perform to reach its target.
Write a function:
- def solution(X, Y, D)
that, given three integers X, Y and D, returns the minimal number of jumps from position X to a position equal to or greater than Y.
For example, given:
X = 10
Y = 85
D = 30
the function should return 3, because the frog will be positioned as follows:
- after the first jump, at position 10 + 30 = 40
- after the second jump, at position 10 + 30 + 30 = 70
- after the third jump, at position 10 + 30 + 30 + 30 = 100
Write an efficient algorithm for the following assumptions:
- X, Y and D are integers within the range [1..1,000,000,000];
- X ≤ Y.
Code
# you can write to stdout for debugging purposes, e.g.
# print("this is a debug message")
def solution(X, Y, D):
# write your code in Python 3.6
# frog가 가야 할 거리 정의
distance = Y - X
# distance가 0인 경우 0 반환
if distance == 0:
answer = 0
# distance를 D로 나누어 나머지가 0일 경우 몫 반환
elif distance % D == 0 :
answer = int(distance / D)
# distance를 D로 나누어 나머지가 0이 아닐 경우 몫 + 1 반환
else:
answer = int(distance / D) + 1
return answer