Question 4: A Python solution
import subprocess rows = [[" " for y in range(1024)] for x in range(512)] r, c = 0, 0 command = ['unzip', '-p', '04-hansel-and-gretel.zip', 'path.txt'] for byte in subprocess.check_output(command): cmd = chr(byte) if cmd == 'N': r -= 1 if cmd == 'S': r += 1 if cmd == 'W': c -= 1 if cmd == 'E': c += 1 if cmd == '*': rows[r][c] = '#' for row in rows: print(''.join(row))