Computer Science, asked by rishabhkumar20072002, 16 days ago

Problem: Consider a non-empty input array (inarr) containing non-zero positive Integer. From input array, identify the unique pairs of integers such that each of the integers in the pair have the same sum of the digits. Print outnum, the number of unique pairs identified satisfying the criteria. If no such pair of integers can be identified print -1 Input format: Read the array inarr (input array) with the elements separated by ‘,’ (comma) Output format: Print outnum or -1 accordingly Sample Input: 34,89,6,321,53,45,2211,81 Sample Output:4

Answers

Answered by skdnit1
4

Answer:

Explanation:

import math

list_num=input().split(',')

sum_dig_list=[]

for num in list_num:

   sum_dig=sum(list(map(int, num)))

   sum_dig_list.append(sum_dig)

max_sum=max(sum_dig_list)

list_digit_count=[0]*(max_sum+1)

for num in sum_dig_list:

   list_digit_count[num] += 1

total_pair=0

for count in list_digit_count:

   if count>1:

       total_pair += int(math.factorial(count)/(math.factorial(count-2)*2))

if total_pair==0:

   print('-1')

else:

   print(total_pair)

Similar questions