#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; long long MOD = 1000000007; bool is_ok( int a, int d, int k, int n ) { if ( n-a < k ) { return false; } return ( ( a*k + k*(k+1)/2 ) <= d && d <= ( n*k-(k-1)*k/2 ) ); } int main() { int N,D,K; cin >> N >> D >> K; if ( N < K ) { cout << -1 << endl; return 0; } vector A; for ( int i = 1; i <= N; i++ ) { if ( is_ok( i, D-i, K-1, N ) ) { A.push_back(i); K--; D -= i; } } if ( K ) { cout << -1 << endl; } for ( int i = 0; i < A.size(); i++ ) { cout << A[i]; if ( i != A.size()-1 ) { cout << " "; } } cout << endl; return 0; }