AtCoder Beginner Contest 123:D - Cake 123
問題
解法
XYZ 通り列挙していては当然間に合わないので,まず XY 通り全て列挙する.この XY 通りのうち,K + 1 番目以降は最終的な答えの K 個の中に入らない(これは実験すると明らか).なので XY 通りをソートし,大きいものから K 個だけを持っておく.この K 個と C を全通り組み合わせて(KZ 通り),大きいものから K 個出力すればよい.O(XY + XY logXY + KZ logKZ).
解答