Cod sursa(job #1291818)

Utilizator LegionHagiu Stefan Legion Data 13 decembrie 2014 12:11:00
Problema Farfurii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <fstream>
using namespace std;

int main()
{
    ifstream in("farfurii.in");
    ofstream out("farfurii.out");
    register unsigned int i,n,k,t=0,mare,g;
    in>>n;
    in>>k;
    in.close();
    for (i=1;t+i<=k;i++)
    {
        t+=i;
    }
    i--;
    mare=n-i;
    k-=t;
    if (k==0)
    {
        for (i=1;i<mare;i++)
        {
            out<<i<<" ";
        }
        out<<n<<" ";
        g=n;
        for (i=mare+1;i<=n;i++)
        {
            g--;
            out<<g<<" ";
        }
    }
    else
    {
        for (i=1;i<mare-1;i++)
        {
            out<<i<<" ";
        }
        out<<mare-1+k<<" "<<n<<" ";
        g=n;
        for (i=mare+1;i<=n-k;i++)
        {
            g--;
            out<<g<<" ";
        }
        g=mare-1+k;
        for (i=n-k+1;i<=n;i++)
        {
            g--;
            out<<g<<" ";
        }
    }
    out.close();
    return 0;
}