# PBinfo #4147 – NumarareCifre – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: deivid

## Enunț

Cerinţa
Se dă un vector cu n numere naturale. Să se determine câte dintre perechile de elemente din vector au același număr de cifre.

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
elementele vectorului vor fi cuprinse între 0 și 1.000.000.000

Exemplu:
Intrare

6
13 3 8 700 9 25
Ieșire

4
Explicație
Perechile de elemente cu același număr de cifre sunt:
3 8 – cu câte o cifră 
3 9 – cu câte o cifră
8 9 – cu câte o cifră
13 25 – cu câte 2 cifre

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int main()
{
    int F[11]={0},n;
    long long c=0;
    cin>>n;
    for(int i=1;i<=n;i++)
        {
            int x,nc=0;
            cin>>x;
            if(x==0) nc=1;
            while(x>0)
            {
                nc++;
                x=x/10;
            }
            F[nc]++;
        }
    for(int i=1;i<=10;i++)
        c=c+1LL*F[i]*(F[i]-1)/2;
    cout<<c;
    return 0;
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/4147)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/4147/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-4147/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
