Cod sursa(job #2569911)

Utilizator Alex2421Nedelcu Alexandru Alex2421 Data 4 martie 2020 14:14:45
Problema Farfurii Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

ifstream in("farfurii.in");
ofstream out("farfurii.out");

int const lim = 100001;
int n,k,v[lim],a=1,r,p1,p2;

int main()
{
    in>>n>>k;
    p2=n;
    for(int i=a;i<=n;i++)
    {
        int s=n-i;
        if(s*(s-1)/2>=k) v[i]=i;
        else {a=i;
        break;}
    }
    p1=a;


    while(r!=k)
    {
        if(r+n-a<=k)
        {
         v[p2]=a;
         p2--;
         r=r+n-a;
         a++;
        }
        else
        {
         v[p1]=a;
         p1++;
         a++;
        }
    }

    for(int i=p1;i<=p2;i++)
    {v[i]=a;
    a++;}

    for(int i=1;i<=n;i++)
        out<<v[i]<<" ";
}