#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //eolibraries #define lnf 3999999999999999999 #define inf 999999999 #define fi first #define se second #define pb push_back #define ll long long #define ld long double #define all(c) (c).begin(),(c).end() #define sz(c) (ll)(c).size() #define make_unique(a) sort(all(a)),a.erase(unique(all(a)),a.end()) #define pii pair #define tpii pair #define rep(i,n) for(ll i = 0 ; i < n ; i++) #define drep(i,n) for(ll i = n-1 ; i >= 0 ; i--) #define crep(i,x,n) for(ll i = x ; i < n ; i++) #define vi vector #define vec(...) vector<__VA_ARGS__> #define fcin ios_base::sync_with_stdio(false),cin.tie(0),cout.tie(0); //eodefine using namespace std; const ll mxn=302; int main(){ fcin; ll n; ll m,k; cin>>n>>m>>k; ll l=0,r=n,c=-1; while(l<=r){ ll m=(l+r)/2; if((m*(m-1))/2<=k){ l=m+1; c=m; }else{ r=m-1; } } deque dq; ll now=n; while(now>n-c){ dq.push_back(now); now--; } ll rem=k-(c*(c-1))/2; ll eh=0; drep(i,sz(dq)){ if(rem==sz(dq)-i-1){ eh=dq[i+1]; crep(j,i+1,sz(dq)) dq[j]--; break; } } if(eh!=0) dq.push_front(eh); ll cmn=dq.back(); ll x=1; while(x st; for(auto x : dq) st.insert(x); sum=0; for(auto x : dq) sum+=x; for(auto x : dq) cout<