vinhquang5.5

Run Settings
LanguagePython
Language Version
Run Command
# Ex5 # --- # Using names.txt https://projecteuler.net/project/resources/p022_names.txt # (right click and 'Save Link/Target As...'),a 46K text file containing # over five-thousand first names, begin by sorting it into alphabetical order. # Then working out the alphabetical value for each name, # multiply this value by its alphabetical position in the list to obtain a name # score. # For example, when the list is sorted into alphabetical order, COLIN, # which is worth 3 + 15 + 12 + 9 + 14 = 53, is the 938th name in the list. # So, COLIN would obtain a score of 938 × 53 = 49714. # What is the total of all the name scores in the file? # https://projecteuler.net/problem=22 def scores(filename): import string enu_chars = list(enumerate(string.ascii_uppercase, start=1)) with open(filename) as f: lst_filename = f.read().lstrip('"').rstrip('"').split('","') lst_filename.sort() lst_scores = [] total = 0 for chars in lst_filename: score = 0 for char in chars: for stt, var in enu_chars: if var == char: score = score + stt lst_scores.append(score) total += score * (lst_filename.index(chars) + 1) print(lst_scores) print(total) scores(filename) # result5.5: 871198282
Editor Settings
Theme
Key bindings
Full width
Lines