2017-09-07 3 views
0

Ich versuche zu lösen this CodeChef Problem, wenn eine Zeichenfolge gegeben, muss ich herausfinden, welche Zeichen für ein Pangram fehlt, und dann die Summe der Position von denen zurückgeben. Ich bin wirklich nah dran, aber mein Code hat irgendwo einen Fehler, den ich nicht finden kann. Die add-Variable wird nicht auf 0 zurückgesetzt. Warum passiert das?Wie kann ich den Wert dieser Variablen zurücksetzen?

import string 
x=0 
letters = dict.fromkeys(string.ascii_lowercase, 0) 

def finder(): 
    add = 0 
    for j in letters.keys(): 
    if j not in text: 
     add += letters[j] 
     print add 

for i in xrange(int(raw_input())): 
    for i in letters: 
    x +=1 
    letters[i] = x 
    text = list(raw_input()) 
    finder() 
+0

Ja, der Code läuft gut, es ist nur, dass die „add“ Variable nie auf 0 zurückgesetzt, wenn Looping, das ist das einzige, was hält mich davon ab, dies zu lösen. – PlisquinSSz

+0

Wann/unter welchen Bedingungen soll 'add'" zurückgesetzt "werden? – jwodder

+0

Wenn es den Wert des letzten fehlenden Buchstabens der Eingabezeichenfolge summiert, damit er mit der nächsten Eingabe erneut beginnen kann. – PlisquinSSz

Antwort

0

Ich denke x Bedürfnisse innerhalb der for-Schleife zurück:

for i in xrange(int(raw_input())): 
    x=0 
    for i in letters: 
    x +=1 
    letters[i] = x 
    text = list(raw_input()) 
    finder() 
+0

Ja, funktioniert perfekt mit dieser Änderung, danke! – PlisquinSSz

Verwandte Themen