# ACSL whatever # Jonathan Sorce def permute(string): if len(string) == 1: if string == '*': return ['1', '0'] else: return [string,] else: if string[0] == '*': return ['1' + i for i in permute(string[1:])] + \ ['0' + j for j in permute(string[1:])] else: return [string[0] + i for i in permute(string[1:])] for i in range(5): inPut = raw_input("> ") inPut = inPut.split(", ") strings = inPut[1:] retString = "" for i in range(len(strings[0])): oneFound = False zeroFound = False for j in strings: if j[i] == '1': oneFound = True if j[i] == '0': zeroFound = True if oneFound and zeroFound: retString += '*' elif oneFound: retString += '1' elif zeroFound: retString += '0' # Check valid = True for i in permute(retString): if i not in strings: print "NONE" valid = False break if valid == True: print retString
2, 1, 0 2, 01, 00 2, 001, 010 4, 100, 110, 101, 111 8, 000, 001, 010, 011, 100, 101, 110, 111