rendered paste bodyfrom sys import stdinclass Node: def __init__(self): self.barn = {} self.posi = []def bygg(ordliste): toppnode = Node() for ord,pos in ordliste: aktiv = toppnode for bokstav in ord: if bokstav not in aktiv.barn: aktiv.barn[bokstav] = Node() aktiv = aktiv.barn[bokstav] aktiv.posi.append(pos) return toppnodedef posisjoner(ord, indeks, node): if indeks == len(ord): return node.posi if len(node.barn) == 0: return [] if ord[indeks] == '?': pos = [] for b in node.barn: pos += posisjoner(ord, indeks + 1, node.barn[b]) return pos if ord[indeks] in node.barn: return posisjoner(ord, indeks + 1, node.barn[ord[indeks]]) return []ord = stdin.readline().split()ordliste = []pos = 0for o in ord: ordliste.append( (o,pos) ) pos += len(o) + 1toppnode = bygg(ordliste)for sokeord in stdin: sokeord = sokeord.strip() print sokeord + ":", posi = posisjoner(sokeord, 0, toppnode) posi.sort() for p in posi: print p, print