Cod sursa(job #3221227)

Utilizator Gabriel_DaescuDaescu Gabriel Florin Gabriel_Daescu Data 6 aprilie 2024 12:29:31
Problema Generare de permutari Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.98 kb
#include <fstream>
using namespace std;
ifstream  fin("combinari.in");
ofstream fout("combinari.out");
int N,i,j,ok,v[20],l;
int main()
{
    fin>>N;

    for(i=1; i<=N; i++)
    {
        v[i]=i;
    }

    do
    {
        for(i=1; i<=N; i++)
        {
            fout<< v[i] << " ";
        }
        fout<< "\n";

        ok=0;

        for(i=N; i>=2; i--)
        {
            if(v[i-1]<v[i])
            {
                ok=1;
                for(j=N; j>=i; j--)
                {
                    if(v[j]>v[i-1])
                    {
                       swap(v[j],v[i-1]);
                       break;
                    }

                }

                j=i;
                l=N;

                while(j<l)
                {
                    swap(v[j],v[l]);
                    j++;
                    l--;
                }
                break;
            }
        }
    }
    while(ok!=0);

    return 0;
}