#include using namespace std; #define ll long long #define rep(i,n) for(int (i)=0;(i)<(n);(i)++) #define Pr pair #define Tp tuple using Graph = vector>; const ll mod = 998244353; int main() { ll N,M,K; cin >> N >> M >> K; ll r = M-N*(N-1)/2; vector perm; rep(i,N){ perm.push_back(i); } perm[N-1] += r; vector fr; bool tr[N]; rep(i,N) tr[i] = false; ll inv = 0; rep(i,N){ if(inv+(N-1-i)<=K){ inv += (N-1-i); fr.push_back(perm[N-1-i]); tr[N-1-i] = true; } } rep(i,fr.size()){ cout << fr[i] << endl; } rep(i,N){ if(tr[i]) continue; cout << perm[i] << endl; } //cout << endl; }