# PBinfo #1923 – egale – Rezolvare C++

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

## Enunț

Cerința
Afişaţi, în ordine crescătoare, toate numerele dintr-un anumit interval care au toate cifrele egale.
Sunt două tipuri de cerinţe:
1. se dau a şi b si se cer toate numerele din intervalul a, b (inclusiv, eventual, capetele).
2. Se da x si se cer toate numerele cu maxim x cifre.

Date de intrare
Din fişierul egale.in se citeşte mai întâi un număr T. Dacă T este 1 pe a doua linie sunt două numere a şi b, separate prin spaţiu. Dacă T este 2, pe a doua linie va fi numărul x.

Date de ieșire
In fişierul egale.out se scriu, pe un rând numerele cerute separate prin câte un spaţiu.

Restricții și precizări

1 ≤ a ≤ b ≤ 1017
1 ≤ x ≤ 100
Pentru 20% din punctaj avem T = 1 şi 1 ≤ a, b ≤ 104
Pentru încă 20% din punctaj avem T = 1 şi 108  ≤ a, b ≤ 109
Pentru încă 10% din punctaj avem T = 1 şi a, b > 109
Pentru 50% din punctaj avem T=2

Exemplu:
egale.in

1
8 30
egale.out

8 9 11 22
egale.in

2
2
egale.out

1 2 3 4 5 6 7 8 9 11 22 33 44 55 66 77 88 99

## Cod sursă C++

```cpp
#include <bits/stdc++.h>
using namespace std;
ifstream in("egale.in");
ofstream out("egale.out");
int main() {
    int C; in >> C;
    if (C == 1) {
        long long a, b, temp = 1;
        in >> a >> b;
        while (temp <= b) {
            for (int i = 1; i <= 9; i++)
                if (a <= i * temp && i * temp <= b)
                    out << i * temp << " ";
            temp = temp * 10 + 1;
        }
    } else {
        int x; in >> x;
        for (int i = 1; i <= x; i++) {
            for (int j = 1; j <= 9; j++) {
                for (int k = 1; k <= i; k++) out << j;
                out << " ";
            }
        }
    } return 0;
}
```

## Resurse

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