# PBinfo #1942 – CicluHamiltonian – Rezolvare C++

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

## Enunț

Cerința
Dându-se un număr natural N, aflaţi numărul de cicluri Hamiltoniene dintr-un graf complet cu N noduri. 

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

Date de ieșire
Programul va afișa pe ecran numărul cerut.

Restricții și precizări

3 ≤ N ≤ 100
două cicluri diferă dacă au cel puțin o muchie diferită

Exemplu:
Intrare

3
Ieșire

1
Explicație
Un graf complet cu 3 noduri are un ciclu Hamiltonian.

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
bool ok;
int n, rez[100002], R;
int main()
{
	cin >> n;
	n--;
	rez[0] = 1;
	rez[1] = 1;
	for(int i = 3; i <= n; ++i)
	{
		int t = 0;
		for(int j = 1; j <= rez[0] ; j++)
		{
			int cif = t + i * rez[j];
			rez[j] = cif % 10;
			t = cif / 10;
		}
		while(t)
			rez[++rez[0]] = t % 10, t /= 10;
	}
	for(int i = rez[0]; i; i--)
		cout << rez[i];
	return 0;
}
```

## Resurse

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