Rezolvare completă PbInfo #1942 CicluHamiltonian

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.

Cum e corect?

cout < "As la info"; cout << "As la info"; cout >> "As la info";

Felicitări! Poți mai mult?

Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.

Greșit, dar nu-i bai!

Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.

Rezolvare

Iată rezolvarea de 100 de puncte pentru problema CicluHamiltonian:

#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;
}

Atenție

Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa Adresa de email.

Rezolvarea problemei #1942 CicluHamiltonian

Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #1942 CicluHamiltonian de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.

Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!