using System.Linq; using System; public class Hello { public static void Main() { string[] line = Console.ReadLine().Trim().Split(' '); var n = int.Parse(line[0]); var d = int.Parse(line[1]); var k = int.Parse(line[2]); var ksum = (k + 1) * k / 2; if (ksum > d) { Console.WriteLine(-1); goto end; } if (ksum == d) { Console.WriteLine(string.Join(" ", Enumerable.Range(1, k))); goto end; } var ksum2 = (2 * n + 1 - k) * k / 2; if (ksum2 < d) { Console.WriteLine(-1); goto end; } if (ksum2== d) { Console.WriteLine(string.Join(" ", Enumerable.Range(n -k + 1, k))); goto end; } getAns(n, d, k); end:; } public static void getAns (int n , int d , int k) { var a = Enumerable.Range(1, k).ToArray(); a[k - 1] = d - (k - 1) * k / 2; var b = Enumerable.Range(n -k + 1, k).ToArray(); var p = k - 1; while (true) { if (a[p] > b[p]) { a[p - 1] += a[p] - b[p]; a[p] = b[p]; } else break; p--; } Console.WriteLine(string.Join(" ",a)); } }