# PBinfo #4593 – NiceNumbers – Rezolvare C++

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

## Enunț

Un număr se numește “nice” dacă conține 69 ca subsecvență. În alte cuvinte, dacă în numarul respectiv, imediat după o cifra 6 se află o cifră 9, numărul respectiv este “nice”.

De exemplu, numărul 369420 este “nice”, pe când numărul 684920 nu este “nice”.

Cerința
Se dau N numere naturale. Să se determine câte dintre ele sunt “nice”.

Date de intrare
Programul citește de la tastatură numărul N, iar apoi N numere naturale, separate prin spații.

Date de ieșire
Programul va afișa pe ecran numărul cnt, reprezentând numărul de numere “nice”.

Restricții și precizări

1 ≤ N ≤ 100.000
0 ≤ A[i] ≤ 1.000.000.000

Exemplu:
Intrare

5
69 6489 53 69420 8
Ieșire

2
Explicație
Numerele 69 și 69420 sunt “nice”, pe când restul nu sunt.

## Cod sursă C++

```cpp
// Problema NiceNumbers - solutie de 100 puncte
#include <iostream>
int main() {
	// Citim q = numarul de numere
	int q;
	std::cin >> q;
	// Citim cele q numere si mentinem variabila ret = numarul de numere "nice"
	int ret = 0;
	while (q--) {
		int val;
		std::cin >> val;
		// ok = numarul este nice (1) sau nu (0)
		bool ok = 0;
		while (val>=10) {
			// daca ultimele doua cifre in acest moment sunt 69, numarul este nice
			if (val%100==69) {
				ok = 1;
			}
			val /= 10;
		}
		// daca numarul este nice, crestem variabila ret
		if (ok) {
			ret += 1;
		}
	}
	// Afisam raspunsul
	std::cout << ret << "\n";
}
```

## Resurse

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