Cod sursa(job #2623124)

Utilizator AvramDanielAvram Daniel AvramDaniel Data 2 iunie 2020 17:11:32
Problema Farfurii Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.6 kb
#include<bits/stdc++.h>
using namespace std;

int main(){

    freopen("farfurii.in", "r", stdin);
	freopen("farfurii.out", "w", stdout);

    long int n,k;
    scanf("%d%d", &n, &k);

    long int N = (1+ sqrt(1 + 8*k) )/2, i;

    long int K = N*(N - 1)/2;

    if(K < k){
        K+=N;
        N++;
    }

    for(i = 1; i<=(n - N);i++)
        printf("%ld  ",i);

    int dif = (n - N);
    printf("%ld  ",n - (K - k));

    N+=dif;

    for(i = N; i > N - (K - k);i--)
        printf("%ld  ",i);
    for(i = N - (K - k)-1; i>0;i--)
        printf("%ld  ",i);

    return 0;
}