# PBinfo #4215 – Alipit – Rezolvare C++

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

## Enunț

Un numar se numeste “alipit” daca se obtine prin lipirea a doua sau mai multe numere identice. Exemplu: 121212 sau 111.

Cerința
Să se verifice dacă un număr natural n este “alipit”.

Date de intrare
Programul citește de la tastatură numărul n.

Date de ieșire
Programul va afișa pe ecran mesajul DA dacă n este “alipit”, sau mesajul NU în caz contrar .

Restricții și precizări

1 ≤ n ≤ 1.000.000.000.000

Exemplu:
Intrare

1212
Ieșire

DA

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int main() {
    long long int n, temp, m, nrcifre = 0;
    bool adv = 0;
    cin >> n;
    m = n;
    while (m != 0) 
        nrcifre++, m = m / 10;
    nrcifre = nrcifre / 2;
    long long int p = 10;
    while (nrcifre--) {
        temp = n;
        int c = temp % p;
        while (temp && c == temp % p)
            temp = temp / p;
        if(temp == 0) adv = 1;
        p = p * 10;
    } if (adv) cout << "DA";
    else cout << "NU";
    return 0;
}
```

## Resurse

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