Cod sursa(job #2312703)

Utilizator cameliapatileaPatilea Catalina Camelia cameliapatilea Data 5 ianuarie 2019 13:18:58
Problema Farfurii Scor 100
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.82 kb
#include<stdio.h>

int main()
{
    long long n, aux;
   long long auxk, k;
    FILE *f = fopen("farfurii.in", "r+");
    FILE *g = fopen("farfurii.out", "w+");

    fscanf(f, "%lli%lli", &n, &k);
    aux = n - 1;
    //daca nu exista tacamuri, nu exista inversiuni
    if(k == 0)
    {
        for(int i = 0; i < n; i++)
            fprintf(g, "%lli ", i);
    }
    //calculez nr de inversiuni necesare
    else
    {

        auxk = 1LL *n * (n - 1) / 2 - k;
        while(auxk >= aux)
        {

            fprintf(g, "%lli ", n - aux);
            auxk = auxk - aux;
            aux -- ;

        }
        fprintf(g, "%lli ", n - auxk);
        for(int i = n; i >= n - aux; i--)
        {

            if( i + auxk != n)
                fprintf(g, "%lli ", i);
        }
    }
    return 0;
}