~cpp
import sys
def Anagram(inFile,outFile):
anagrams={}
for eachWord in inFile:
eachWord=eachWord.strip()
key=list(eachWord);key.sort();key=''.join(key)
anagrams.setdefault(key,[]).append(eachWord)
for eachAnagram in anagrams.itervalues():
print >> outFile, ' '.join(eachAnagram)
if __name__=='__main__':
Anagram(sys.stdin,sys.stdout)
P4 1.8Ghz 512MB Win XP Python 2.2.1에서 17만 단어로 실행하면 4초. 프로세스 메모리 점유 약 31MB. 만약 psyco로 bind를 해주면(if문 위에
~cpp import psyco;psyco.bind(Aangram)을 추가) 3.4초.









