1503B - 3-Coloring - CodeForces Solution


constructive algorithms games interactive *1700

Please click on ads to support us..

Python Code:

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)


Comments

Submit
0 Comments
More Questions

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