#7134. 交朋友的数学诡计

交朋友的数学诡计

题目描述

一场比赛结束后,组织者要把 n 名选手分成 m 个小组,要求:

  • 每个小组至少有 1 名选手;
  • 每名选手恰好属于一个小组。

分完组后,同一个小组里的任意两名选手都会成为朋友,不同小组的选手之间不会成为朋友。

也就是说,一个小组里如果有 k 名选手,这个小组内部就贡献 (k2)=k(k−1)2\binom{k}{2}=\dfrac{k(k-1)}{2} 对朋友;朋友总数就是各小组贡献之和。

组与组之间不区分——把两个组的人数对调,仍算同一种分法,朋友对数也不变。所以一种分法看成"每组各有多少人"就够了。

不同的分法,朋友对数不一样。例如 n = 5、m = 2 时,可以分成 4 + 1(朋友数 6 + 0 = 6),也可以分成 3 + 2(朋友数 3 + 1 = 4)。

请你求出:在所有分法中,朋友总对数的最小值和最大值。

输入格式

一行两个整数 n 和 m,中间用一个空格隔开。

输出格式

一行两个整数,中间用一个空格隔开:第一个是最少的朋友对数,第二个是最多的朋友对数。

数据范围

1≤m≤n≤1091 \le m \le n \le 10^9

样例

5 1
10 10
5 2
4 6

样例解释

样例 1:m = 1,只有一种分法——5 个人全在一组,朋友数 (52)=10\binom{5}{2}=10,所以最小值和最大值都是 10。

样例 2:5 个人分 2 组,只有 4 + 1 和 3 + 2 两种分法。前者贡献 6 + 0 = 6 对,后者贡献 3 + 1 = 4 对,所以最少 4 对、最多 6 对。