当前位置: 代码迷 >> 综合 >> Training Session 培训课程
  详细解决方案

Training Session 培训课程

热度:25   发布时间:2023-11-25 03:00:19.0

题目链接:https://codeforces.com/problemset/problem/1598/D

描述:

Monocarp 是 Berland 州立大学编程团队的教练。 他决定为他的团队的培训课程编写一个问题集。
Monocarp 有 n 个他的学生还没有遇到过的问题。 第 i 个问题有一个主题 ai(从 1 到 n 的整数)和一个难度 bi(从 1 到 n 的整数)。 所有的问题都是不同的,也就是说,没有两个任务同时具有相同的主题和难度。
Monocarp 决定从 n 个问题中准确选择 3 个问题作为问题集。 问题应至少满足以下两个条件之一(可能同时满足两者):

  • 所有三个选定问题的主题都不同;
  • 所有三个选定的问题的难度都是不同的。
    你的任务是确定为问题集选择三个问题的方法的数量。

输入:

第一行包含一个整数 t (1≤t≤50000) — 测试用例的数量。
每个测试用例的第一行包含一个整数 n (3≤n≤2?10^5) — Monocarp 的问题数。
在以下 n 行的第 i 行中,有两个整数 ai 和 bi (1≤ai,bi≤n)——第 i 个问题的主题和难度。
保证不存在同时具有相同主题和难度的两个问题。
所有测试用例的 n 总和不超过 2?10^5。

输出:

打印选择满足语句中描述的任一要求的三个训练问题的方法数。

样例输入:

2
4
2 4
3 4
2 1
1 3
5
1 5
2 4
3 3
4 2
5 1

样例输出:

3
10

笔记
在第一个示例中,您可以采取以下三个问题的集合:

问题 1、2、4;
问题1、3、4;
问题 2、3、4。
因此,路数等于三。

  相关解决方案