A1941 | 无向图三元环计数
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
无向图 $G$ 的三元环指的是一个 $G$ 的一个子图 $G_0$,满足 $G_0$ 有且仅有三个点 $u, v, w$,有且仅有三条边 $\langle u, v \rangle, \langle v, w \rangle, \langle w, u \rangle$。两个三元环 $G_1, G_2$ 不同当且仅当存在一个点 $u$,满足 $u \in G_1$ 且 $u \notin G_2$。给定一个 $n$ 个点 $m$ 条边的简单无向图,求其三元环个数。
输入格式
每个测试点有且仅有一组测试数据。
输入的第一行是用一个空格隔开的两个整数,分别代表图的点数 $n$ 和边数 $m$。
第 $2$ 到第 $(m + 1)$ 行,每行两个用空格隔开的整数 $u, v$,代表有一条连接节点 $u$ 和节点 $v$ 的边。
输入的第一行是用一个空格隔开的两个整数,分别代表图的点数 $n$ 和边数 $m$。
第 $2$ 到第 $(m + 1)$ 行,每行两个用空格隔开的整数 $u, v$,代表有一条连接节点 $u$ 和节点 $v$ 的边。
输出格式
输出一行一个整数,代表该图的三元环个数。
输入输出样例
输入 #1
3 3 1 2 2 3 3 1
输出 #1
1
输入 #2
5 8 1 2 2 3 3 5 5 4 4 2 5 2 1 4 3 4
输出 #2
5
**【样例 2 解释】**
共有 $5$ 个三元环,每个三元环包含的点分别是 $\{1, 2, 4\}, \{2, 3, 4\}, \{2, 3, 5\}, \{2, 4, 5\}, \{3, 4, 5\}$。
**【数据规模与约定】**
**本题采用多测试点捆绑测试,共有两个子任务**。
- Subtask 1(30 points):$n \le 500$,$m \le {10}^3$。
- Subtask 2(70 points):无特殊性质。
对于 $100\%$ 的数据,$1 \le n \le 10^5$,$1 \le m \le 2 \times {10}^5$,$1 \le u, v \le n$,给出的图不存在重边和自环,**但不保证图连通**。
**【提示】**
- 请注意常数因子对程序效率造成的影响。
共有 $5$ 个三元环,每个三元环包含的点分别是 $\{1, 2, 4\}, \{2, 3, 4\}, \{2, 3, 5\}, \{2, 4, 5\}, \{3, 4, 5\}$。
**【数据规模与约定】**
**本题采用多测试点捆绑测试,共有两个子任务**。
- Subtask 1(30 points):$n \le 500$,$m \le {10}^3$。
- Subtask 2(70 points):无特殊性质。
对于 $100\%$ 的数据,$1 \le n \le 10^5$,$1 \le m \le 2 \times {10}^5$,$1 \le u, v \le n$,给出的图不存在重边和自环,**但不保证图连通**。
**【提示】**
- 请注意常数因子对程序效率造成的影响。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?