Write a function valueOfNameslistOfNames which Computes and
Solution
def is_prime(n):
if n == 1 :
return False
for i in range(3, n):
if n % i == 0:
return False
return True
def valueOfNames(lis):
total_sum = 0 # this variable will contain total sum of all names
for name in lis:
sum_of_letters = 0 # this variable will contain sum of all letters of a name
number_of_primes = 0 # contain total no of primes
for letter in name: # loop through the whole list
number = ord(letter)-ord(\'a\') + 1 # a->1, b->2 and so on
# ord(\'a\') = 97, ord(\'b\') = 98 so ord(\'b\') - ord(\'a\') + 1 = 2
sum_of_letters += number
if is_prime(number):
number_of_primes+=1 # increment if prime
total_sum += sum_of_letters*number_of_primes # calculate total sum
return total_sum
print valueOfNames([\"john\", \"stewart\" , \"buckminster\"])
ans 1128
