Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Determine the Order by tokiojapan55
def check(chars, rules):
result = sorted(chars)[0]
loop = True
while loop:
loop = False
for rule in rules:
if rule[1] == result and rule[0] in chars:
result = rule[0]
loop = True
break
return result
def checkio(data):
rules = set()
chars = set()
for d in data:
chars.update(set(list(d)))
for i in range(len(d)-1):
if d[i] != d[i+1]:
rules.add((d[i],d[i+1]))
rules = sorted(list(rules), key=lambda r:r[0])
print(chars, rules)
result = []
while chars:
ch = check(chars, rules)
result.append(ch)
chars -= {ch}
print("result", result)
return ''.join(result)
June 17, 2020