Se dă un vector cu n numere naturale. Să se determine câte dintre perechile de elemente din vector sunt formate din valori cu aceeași sumă a cifrelor.
Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale, separate prin spaţii, reprezentând elementele vectorului.
Date de ieșire
Programul afișează pe ecran numărul C, reprezentând valoarea cerută.
Restricții și precizări
1 ≤ n ≤ 100.000
cele n numere citite vor fi mai mici decât 1.000.000.000
Exemplu
Intrare
6
51 842 15 28 77 132
Ieșire
4
Explicație
Perechile de elemente cu aceeaşi sumă cifrelor sunt:
51 15
51 132
842 77
15 132
Solutie
#include<iostream>
using namespace std;
int f[200];
int sumcif(int a)
{
int s=0;
while(a)
{
s+=a%10;
a=a/10;
}
return s;}
int main()
{
int n,a,rez=0;
cin>>n;
for(int i=0;i>a;
f[sumcif(a)]++;
}
for(int i=0;i<200;i++)
{
rez+=f[i]*(f[i]-1)/2;
}
cout<<rez;
return 0;
}