Archives
Trending
Support
Login
clear text
XML
Django
JavaScript
MATLAB
C
C++
C#
Python
SQL
Shell
Bash
Markdown
YAML
JSON
HTML
CSS
PHP
Java
Ruby
Go
Rust
Swift
Kotlin
Arduino
TypeScript
Perl
Autohotkey
Lua
SQF
R
Scala
Haskell
Groovy
Dart
Clojure
VB.NET
Objective-C
PowerShell
Bash
CoffeeScript
Verilog
def moving(row, col, direction): if direction == "up": return row - 1, col if direction == "down": return row + 1, col if direction == "right": return row, col + 1 if direction == "left": return row, col - 1 SIZE = 6 matrix = [] rover_row = 0 rover_col = 0 for row in range(SIZE): inner_list = input().split() for col in range(SIZE): if inner_list[col] == 'E': rover_row = row rover_col = col matrix.append(inner_list) matrix[rover_row][rover_col] = '-' deposits = 0 counter = 0 flag = False while not flag: data = input() data_split = data.split(', ') for command in data_split: counter += 1 next_row, next_col = moving(rover_row, rover_col, command) if next_col == -1: next_col = SIZE - 1 if next_col > SIZE - 1: next_col = 0 if next_row == -1: next_row = SIZE - 1 if next_row > SIZE - 1: next_row = 0 if matrix[next_row][next_col] == 'W': deposits += 1 print(f'Water deposit found at {(next_row, next_col)}') rover_row, rover_col = next_row, next_col if len(data_split) == counter: flag = True break elif matrix[next_row][next_col] == '-': rover_row, rover_col = next_row, next_col if len(data_split) == counter: flag = True break elif matrix[next_row][next_col] == 'C': deposits += 1 print(f'Concrete deposit found at {(next_row, next_col)}') rover_row, rover_col = next_row, next_col if len(data_split) == counter: flag = True break elif matrix[next_row][next_col] == 'M': deposits += 1 print(f'Metal deposit found at {(next_row, next_col)}') rover_row, rover_col = next_row, next_col if len(data_split) == counter: flag = True break elif matrix[next_row][next_col] == 'R': print(f'Rover got broken at {(next_row, next_col)}') rover_row, rover_col = next_row, next_col flag = True break if deposits >= 3: print(f'Area suitable to start the colony.') else: print(f'Area not suitable to start the colony.')
Mark as private (unlisted)
for 30 minutes
for 6 hours
for 1 day
for 1 week
for 1 month
for 1 year
everlasting (like CCCP)