题意:
在毕业典礼上,有 a 个男孩和 b 个女孩准备跳舞,不是所有的男孩和女孩都准备结伴跳舞;
现在你知道 k 个可能的舞伴,你需要选择其中的两对,以便使没有人重复地出现在舞伴里,求可能的数量;
思路:
先分析样例1
可以得到这样一张图
我们遍历每一组
可以推出每一组的可以和别的组构成的组合为k - 男孩连线数 - 女孩连线数 + 1(因为多删了一个(本组))
得出总答案后,因为重复计算了,如我们计算1组可以和4组组合,再计算4组时仍计算了一次,所以重复计算,答案 / 2 ;
Code:
#include <iostream>
#include <map>
#include <utility>
#include <cstring>
using namespace std;