#include <bits/stdc++.h>
using namespace std;
ifstream f("farfurii.in");
ofstream g("farfurii.out");
int cmm(int N){
int i = 1;
while ((i * (i - 1) / 2) < N)
++i;
return i;
}
int main()
{ long long unsigned N;
long long unsigned K;
f >> N >> K;
long long unsigned m = cmm(K);
if (K == (m * (m - 1)) / 2)
{
for (long long unsigned i = 1; i <= N - m; ++i)
g << i << " ";
for (long long unsigned i = N; i >= N - m + 1; --i)
g << i << " ";
return 0;
}
--m;
//cout << m;
///cout << N - (((m) * (m + 1)) / 2) + K;
for (long long unsigned i = 1; i <= N - m - 1; ++i)
g << i << " ";
g << N - (((m) * (m + 1)) / 2) + K << " ";
for (long long unsigned i = N; i >= N - m; --i)
if (i != N - (((m ) * (m + 1)) / 2) + K)
g << i << " ";
return 0;
}