#include #include int N, D, K; int main(){ scanf("%d %d %d", &N, &D, &K); std::vector v; int sum = 0; for(int i=1;i<=N;i++){ if(K == 0){break;} if(i+K > N+1){break;} int mn = sum + K * i + K * (K-1) / 2, mx = sum + i + (K-1) * N - (K-2) * (K-1) / 2; // printf("%d, %d, [%d, %d]\n", i, sum, mn, mx); if(mn <= D && D <= mx){ sum += i; K--; v.push_back(i); } } if(v.size() < K){puts("-1"); return 0;} for(int i=0;i