Мне было непонятно в вопросе, что если вы хотите вернуть общее количество разных цифр или количество разных цифр для элемента в списке arr
.Поэтому я предполагаю, что вы хотите вернуть общее количество различных цифр.
Если вы сложите оба числа (алгебраическую сумму), то сумма двух соответствующих цифр будет 1
тогда и только тогда, когда две цифрыразличаются, и этот факт можно использовать для подсчета количества разных цифр, как показано ниже
def count_different(arr, b):
diff_digits = 0
for i in arr:
diff_digits += str(int(i)+int(b)).count('1')
return diff_digits
, если вы хотите вернуть количество разных цифр для каждого элемента в arr
они добавляют каждый счет в спискеи вернуть список.
def count_different(arr, b):
diff_digits = 0
l = []
for i in arr:
diff_digits += str(int(i)+int(b)).count('1')
l.append(diff_digits)
return l