Cod sursa(job #2326326)

Utilizator NaritaandreiCNAINarita Andrei NaritaandreiCNAI Data 23 ianuarie 2019 13:55:50
Problema Farfurii Scor 90
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <iostream>
#include <stdio.h>
#include <cstring>
#include <algorithm>
#include <vector>
using namespace std;
FILE *f,*g;
int n,k;
void read()
{
    fscanf(f,"%d %d",&n,&k);
}
void solve()
{
    int kfake=2*k,x,s;
    for(x=1; x<=n; x++)
    {
        if(x*(x+1)>=kfake)
            break;
    }
    s=x*(x+1)/2;
    for(int i=1; i<n-x; i++)
        fprintf(g,"%d ",i);
    if(s>k)
    {
        fprintf(g,"%d ",n-s+k);
        for(int i=n; i>n-s+k; i--)
            fprintf(g,"%d ", i);
        for(int i=n-s+k-1; i>=n-x
        ; i--)
            fprintf(g,"%d ", i);
    }
    else
    {
        for(int i=n; i>=x; i--)
            fprintf(g,"%d ", i);
    }
}
int main()
{
    f=fopen("farfurii.in","r");
    g=fopen("farfurii.out","w");
    read();
    solve();
   //write();
    fclose(f);
    fclose(g);
    return 0;
}