Cod sursa(job #291707)

Utilizator razvan_emPrecupas Razvan razvan_em Data 30 martie 2009 11:12:25
Problema Farfurii Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include <fstream>
#include <math.h>
using namespace std;
ofstream ofis("farfurii.out");
ifstream ifis("farfurii.in");
long long n,a[100244],k,m,i,temp,aux;

int main()
{
    ifis>>n>>k; 
    m=(1+round(sqrt(1+8*k)))/2;
    for (i=1; i<=n-m; i++)
    a[i]=i;
    for (i=n; i>=n-m+1; i--)
    a[n-i+n-m+1]=i;
    temp=k-m*(m-1)/2;
    aux=a[n-m]; a[n-m]=a[n-temp+1]; a[n-temp+1]=a[n]; a[n]=aux;
    for (i=1; i<=n; i++)
    ofis<<a[i]<<" ";
    return 0;
}