All pastes #23277 Raw Edit

Tormod

public python v1 · immutable
#23277 ·published 2005-09-18 13:56 UTC
rendered paste body
from 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