import math
ne = 1
aN = 0
aC = 0
ce = 0
n = int(input())
def nech(n):
global ne
global aN
global aC
global ce
if (n % 2 == 0):
res = [ne % n - 1 * (ne // n % 2) * ((n % 2 + 1) % 2), ne // n]
else:
res = [ne % n, ne // n]
ne += 2
aN += 1
return res
def chet(n):
global ne
global aN
global aC
global ce
if (n % 2 == 0):
res = [ce % n + 1 * (ce // n % 2) * ((n % 2 + 1) % 2), ce // n]
else:
res = [ce % n, ce // n]
ce += 2
aC += 1
return res
for i in range(n * n):
col = int(input())
if col == 2:
if aN < int((n * n) / 2):
x, y = map(int, nech(n))
print(1, x + 1, y + 1)
else:
x, y = map(int, chet(n))
print(3, x + 1, y + 1)
if col == 1:
if aC < math.ceil(n * n / 2):
x, y = map(int, chet(n))
print(2, x + 1, y + 1)
else:
x, y = map(int, nech(n))
print(3, x + 1, y + 1)
if (col == 3):
if aC < math.ceil(n * n / 2):
x, y = map(int, chet(n))
print(2, x + 1, y + 1)
else:
x, y = map(int, nech(n))
print(1, x + 1, y + 1)
977D - Divide by three multiply by two | 1654B - Prefix Removals |
1654A - Maximum Cake Tastiness | 1649A - Game |
139A - Petr and Book | 1612A - Distance |
520A - Pangram | 124A - The number of positions |
1041A - Heist | 901A - Hashing Trees |
1283A - Minutes Before the New Year | 1654D - Potion Brewing Class |
1107B - Digital root | 25A - IQ test |
785A - Anton and Polyhedrons | 1542B - Plus and Multiply |
306A - Candies | 1651C - Fault-tolerant Network |
870A - Search for Pretty Integers | 1174A - Ehab Fails to Be Thanos |
1169A - Circle Metro | 780C - Andryusha and Colored Balloons |
1153A - Serval and Bus | 1487C - Minimum Ties |
1136A - Nastya Is Reading a Book | 1353B - Two Arrays And Swaps |
1490E - Accidental Victory | 1335A - Candies and Two Sisters |
96B - Lucky Numbers (easy) | 1151B - Dima and a Bad XOR |