import sys input = sys.stdin.readline ############ ---- Input Functions ---- ############ def inp(): return(int(input())) def inlt(): return(list(map(int,input().split()))) def insr(): s = input() return(list(s[:len(s) - 1])) def invr(): return(map(int,input().split())) def suma(lista): return(sum(int(x) for x in lista)) [a, b] = inlt() cel = [] for i in range(a): wiersz = insr() cel.append(wiersz) def jest_ok(wiersz): elty = set(wiersz) if elty == {"0"}: return "0" elty = elty - set(["0"]) if len(elty) == 1: return elty.pop() else: return False wiersze_do_zmienienia = [i for i in range(a)] kolumny_do_zmienienia = [i for i in range(b)] kroki = [] while (len(wiersze_do_zmienienia) + len(kolumny_do_zmienienia) > 0 ): for k in wiersze_do_zmienienia: dasie = (jest_ok(cel[k])) if dasie: wiersze_do_zmienienia.remove(k) if dasie != "0": kroki.append("R " + str(k+1) + " "+ dasie) cel[k] = ["0" for i in range(b)] if (len(wiersze_do_zmienienia) + len(kolumny_do_zmienienia) == 0): break for k in kolumny_do_zmienienia: kolumna = [i[k] for i in cel] dasie = (jest_ok(kolumna)) if dasie: kolumny_do_zmienienia.remove(k) if dasie != "0": kroki.append("K " + str(k+1) + " "+ dasie) for i in range(a): cel[i][k] = "0" print(len(kroki)) for i in range (len(kroki)-1, -1, -1): print(kroki[i])
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 | import sys input = sys.stdin.readline ############ ---- Input Functions ---- ############ def inp(): return(int(input())) def inlt(): return(list(map(int,input().split()))) def insr(): s = input() return(list(s[:len(s) - 1])) def invr(): return(map(int,input().split())) def suma(lista): return(sum(int(x) for x in lista)) [a, b] = inlt() cel = [] for i in range(a): wiersz = insr() cel.append(wiersz) def jest_ok(wiersz): elty = set(wiersz) if elty == {"0"}: return "0" elty = elty - set(["0"]) if len(elty) == 1: return elty.pop() else: return False wiersze_do_zmienienia = [i for i in range(a)] kolumny_do_zmienienia = [i for i in range(b)] kroki = [] while (len(wiersze_do_zmienienia) + len(kolumny_do_zmienienia) > 0 ): for k in wiersze_do_zmienienia: dasie = (jest_ok(cel[k])) if dasie: wiersze_do_zmienienia.remove(k) if dasie != "0": kroki.append("R " + str(k+1) + " "+ dasie) cel[k] = ["0" for i in range(b)] if (len(wiersze_do_zmienienia) + len(kolumny_do_zmienienia) == 0): break for k in kolumny_do_zmienienia: kolumna = [i[k] for i in cel] dasie = (jest_ok(kolumna)) if dasie: kolumny_do_zmienienia.remove(k) if dasie != "0": kroki.append("K " + str(k+1) + " "+ dasie) for i in range(a): cel[i][k] = "0" print(len(kroki)) for i in range (len(kroki)-1, -1, -1): print(kroki[i]) |