Skip to content

Instantly share code, notes, and snippets.

@mcrisc
Created May 28, 2020 14:28
Show Gist options
  • Save mcrisc/23790f5ace63a49e5c47d7bc33295d1e to your computer and use it in GitHub Desktop.
Save mcrisc/23790f5ace63a49e5c47d7bc33295d1e to your computer and use it in GitHub Desktop.
Elfos e seus códigos (URI #2020)
# Elfos e seus códigos
# https://www.urionlinejudge.com.br/judge/pt/problems/view/2020
import string
UPPERCASE_LETTERS = string.ascii_letters[26:]
list_num = 0
while True:
try:
line = input().strip()
except EOFError:
break
n = int(line)
list_num += 1
row = {i: i for i in range(0, 27)}
col = {i: i for i in range(0, 27)}
if list_num > 1:
print()
print('LISTA #%d:' % list_num)
# for each list item
items = []
for _ in range(n):
chars = []
codes = map(int, input().strip().split())
for c in codes:
if c == 27:
chars.append(' ')
continue
pos = c - 1
cur_row = row[pos]
char = UPPERCASE_LETTERS[col[cur_row]]
chars.append(char)
# pivoting columns
col[26] = col[cur_row]
for i in range(cur_row, 26):
col[i] = col[i+1]
# pivoting rows
row[26] = row[pos]
for i in range(pos, 26):
row[i] = row[i+1]
item = ''.join(chars)
items.append(item)
items.sort()
for item in items:
print(item)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment