import sys n, m, q = map(int, sys.stdin.readline().split()) groups = [] for i in range(1, n + 1): group = [] for j in range(1, n + 1): if(j % i == 0): group.append(j) groups.append(group) for i in range(m): row = list(map(int, sys.stdin.readline().split())) if row[0] == 1: groups.append(list(set(groups[row[1]-1] + groups[row[2]-1]))) elif row[0] == 2: groups.append(list(set(groups[row[1]-1]).intersection(groups[row[2]-1]))) else: groups.append(list(set(groups[0]) ^ set(groups[row[1]-1]))) for i in range(q): x, v = map(int, sys.stdin.readline().split()) if v in groups[x-1]: print("TAK") else: print("NIE")
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 | import sys n, m, q = map(int, sys.stdin.readline().split()) groups = [] for i in range(1, n + 1): group = [] for j in range(1, n + 1): if(j % i == 0): group.append(j) groups.append(group) for i in range(m): row = list(map(int, sys.stdin.readline().split())) if row[0] == 1: groups.append(list(set(groups[row[1]-1] + groups[row[2]-1]))) elif row[0] == 2: groups.append(list(set(groups[row[1]-1]).intersection(groups[row[2]-1]))) else: groups.append(list(set(groups[0]) ^ set(groups[row[1]-1]))) for i in range(q): x, v = map(int, sys.stdin.readline().split()) if v in groups[x-1]: print("TAK") else: print("NIE") |