def hike(lists: list[list[int]], start: tuple[int, int], end: tuple[int, int]) -> int: """ Given an elevation map and a start and end calculate the cost it would take to hike from to . If the start...


def hike(lists: list[list[int]], start: tuple[int, int],
end: tuple[int, int]) -> int:
"""
Given an elevation map and a start and end calculate the cost it
would take to hike from to . If the start and end are the same, then return 0.



Some definitions and rules:


1. You can only hike to either a vertically or horizontally adjacent


location (you cannot travel diagonally).




2. You must only travel in the direction of the . More


explicitly, this means that any move you make MUST take you closer


to the end point, so you cannot travel in the other direction.




3. We define the cost to travel between two adjacent blocks as the


absolute difference in elevation between those blocks.




4. You will calculate the naive route here, so at every position, you


will have two choices, to either move closer to the end point along


a row, or along a column, and you will chose the position that costs


the least at that point (you do not need to look ahead to see if the


costlier route now will result in an overall cheaper route).




5. If two choices along the route have the exact same cost, you will


choose the direction that comes first clockwise. For example, you


will choose to move horizontally right before vertically down,


vertically down before horizontally left, horizontally left before


vertically up, and vertically up before horizontally right.




Preconditions:


the start and end points will be a valid position on the map.



>>> sample_map = [[1, 3],
... [0, 4]]
>>> cost_to_hike_naive(sample_map, (0, 0), (1, 1))
5
>>> cost_to_hike_naive(sample_map, (1, 1), (0, 0))
3
"""


RESTRICTIONS:


   - Do not add any imports and do it on python .Do not use recursion. Do not use break/continue.Do not use try-except statements

Jun 10, 2022
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here