Решение на Навигация на Piet от Тодор Добрев

Обратно към всички решения

Към профила на Тодор Добрев

Резултати

  • 10 точки от тестове
  • 0 бонус точки
  • 10 точки общо
  • 8 успешни тест(а)
  • 0 неуспешни тест(а)

Код

coords = {'C0FFC0': (-1, 0), 'FFFFC0': (0, -1), 'FFC0C0': (1, 0), 'C0C0FF': (0, 1),
'00C000': (1, 0), 'C0C000': (0, 1), 'C00000': (-1, 0), '0000C0': (0, -1),
'FFFFFF': (0, 0)}
def calculate_final_vector(start, moves):
result = [start[0], start[1]]
for move in moves:
move = move.upper()
if move == '000000':
break
move = coords[move]
result[0] += move[0]
result[1] += move[1]
return tuple(result)

Лог от изпълнението

........
----------------------------------------------------------------------
Ran 8 tests in 0.105s

OK

История (1 версия и 1 коментар)

Тодор обнови решението на 24.10.2022 03:25 (преди около 2 години)

+coords = {'C0FFC0': (-1, 0), 'FFFFC0': (0, -1), 'FFC0C0': (1, 0), 'C0C0FF': (0, 1),
+ '00C000': (1, 0), 'C0C000': (0, 1), 'C00000': (-1, 0), '0000C0': (0, -1),
+ 'FFFFFF': (0, 0)}
+
+
+def calculate_final_vector(start, moves):
+ result = [start[0], start[1]]
+ for move in moves:
+ move = move.upper()
+ if move == '000000':
+ break
+ move = coords[move]
+ result[0] += move[0]
+ result[1] += move[1]
+ return tuple(result)