#include #include #define rep(i,a,b) for(int i=(a);i<(b);i++) #define pb push_back using namespace std; int main(void) { int N, D, K, f=0; cin >> N >> D >> K; vector > V (1001, vector()); vector t; rep(i,1,N+1) { for(int j=1000; j >= 0; j--) { if(j && !V[j].size()) continue; if(j+i > 1000) continue; if(V[j].size() >= K-1 && j+i != D) continue; if(V[j].size() <= K-2 && j+i == D) continue; t = V[j]; t.pb(i); if(!V[j+i].size() || V[j+i] > t) V[j+i] = t; } } if(!V[D].size()) cout << -1 << endl; else { for(auto i: V[D]) cout << i << " "; } cout << endl; return 0; }