using System; class Program { static void Main() { // 读取输入 string[] input = Console.ReadLine().Split(); int n = int.Parse(input[0]); int m = int.Parse(input[1]); // 构造数组 int[] array = new int[n]; int currentValue = 1; int remaining = m; for (int i = 0; i < n - 1; i++) { int valueToAdd = Math.Min(currentValue, remaining - (n - i - 1)); // 避免最后一个元素过大 array[i] = valueToAdd; remaining -= valueToAdd; currentValue++; // 下一个元素至少比当前元素大1(或者保持为1的递增序列) } // 将剩余的值作为最后一个元素 array[n - 1] = remaining; // 输出数组 for (int i = 0; i < n; i++) { Console.Write(array[i] + (i < n - 1 ? " " : "")); } } }