n,m,v = map(int, input().split())
mset = [ set() for i in range(n+m+1) ]
full = set()
for i in range(1,n+1):
full.add(i)
for i in range(1,n+1):
for ind in range(i,n+1,i):
mset[i].add(ind)
for i in range(m):
ll = list(map(int, input().split()))
if ll[0] == 1:
mset[n+i+1] = mset[ll[1]] | mset[ll[2]]
if ll[0] == 2:
mset[n+i+1] = mset[ll[1]] & mset[ll[2]]
if ll[0] == 3:
mset[n+i+1] = full - mset[ll[1]]
for _ in range(v):
zb, war = map(int, input().split())
if war in mset[zb]:
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 | n,m,v = map(int, input().split()) mset = [ set() for i in range(n+m+1) ] full = set() for i in range(1,n+1): full.add(i) for i in range(1,n+1): for ind in range(i,n+1,i): mset[i].add(ind) for i in range(m): ll = list(map(int, input().split())) if ll[0] == 1: mset[n+i+1] = mset[ll[1]] | mset[ll[2]] if ll[0] == 2: mset[n+i+1] = mset[ll[1]] & mset[ll[2]] if ll[0] == 3: mset[n+i+1] = full - mset[ll[1]] for _ in range(v): zb, war = map(int, input().split()) if war in mset[zb]: print("TAK") else: print("NIE") |
English