#THU20211B. Friend

    ID: 39 Type: Default 1000ms 512MiB Tried: 8 Accepted: 1 Difficulty: 7 Uploaded By: Tags>清华推研考研图结构三元环计数组合数学容斥原理

Friend

时间限制: 1.0 秒

空间限制: 512 MB

题目描述

F 学校有 nn 个学生,编号为 1,2,,n1, 2, \cdots, n。这些学生之间存在 mm 对好友关系。每对好友关系形如:uju_j 号学生与 vjv_j 号学生互为好友 (1jm)(1 \le j \le m)。好友关系是双向的,这意味着 uju_j 号学生是 vjv_j 号学生的好友,同时 vjv_j 号学生也是 uju_j 号学生的好友。

F 学校要将 nn 个学生均匀(等概率)随机地分为若干小组,每组 3 个学生。保证 nn 是 3 的倍数,即能够恰好分完。在分组完毕后,每个组内的好友关系也会有不同的情况。现在,对于每个学生 ii,他希望计算他所在小组的 3 个学生当中以下每个事件发生的概率:

  1. 3 个学生两两均不为好友;
  2. 3 个学生中,除自己外的 2 个学生互为好友,不存在其他好友关系;
  3. 3 个学生中,自己与另外某个学生互为好友,不存在其他好友关系;
  4. 3 个学生中,恰好有 2 对好友关系,且有 2 个好友的那个人是自己(即:自己与另外 2 个学生分别互为好友,但他们两个不为好友);
  5. 3 个学生中,恰好有 2 对好友关系,但有 2 个好友的那个人不是自己(即:存在某个学生 A 与自己和另外一个学生 B(分别)互为好友,但自己与 B 不为好友);
  6. 3 个学生中两两互为好友。

请帮助每个学生计算吧!

输入格式

从标准输入读入数据。

第一行输入两个正整数 n,mn, m,以空格隔开。

接下来 mm 行,每行输入两个正整数 uj,vj(ujvj)u_j, v_j(u_j\ne v_j),以空格隔开,表示 uju_jvjv_j 号学生互为好友。

数据保证不存在两组重复的好友关系。

输出格式

输出到标准输出。

输出 nn 行,每行 6 个最简分数,以空格隔开,表示每个学生每种情况的发生概率。

输出最简分数的形式为:先输出分子,再输出斜线 /,最后输出分母。你应当输出最简分数,例如不应当输出 3/6,而应输出 1/2

特殊地,如果所求的某个概率为 00,应当输出 0/1;概率为 11 则输出 1/1

3 2
1 2
1 3
0/1 0/1 0/1 1/1 0/1 0/1
0/1 0/1 0/1 0/1 1/1 0/1
0/1 0/1 0/1 0/1 1/1 0/1

样例 1 解释

一共只有 3 个学生,分组实际上仅有一种方案,不存在随机性。

3 个学生之间存在 2 对好友关系,在 1 号学生看来是第 4 种情况,在 2 号和 3 号学生看来是第 5 种情况。

6 6
1 2
2 3
3 1
1 4
1 5
1 6
0/1 0/1 0/1 9/10 0/1 1/10
3/10 0/1 3/10 0/1 3/10 1/10
3/10 0/1 3/10 0/1 3/10 1/10
1/2 1/10 0/1 0/1 2/5 0/1
1/2 1/10 0/1 0/1 2/5 0/1
1/2 1/10 0/1 0/1 2/5 0/1

子任务

本题采用捆绑测试,你只有通过一个子任务中的所有测试点才能得到该子任务的分数。

对于所有的数据,3n3×1043 \le n \le 3 \times 10^4nn33 的倍数,0m3×1050 \le m \le 3 \times 10 ^ 5

子任务 分值 nn \le mm \le
1 14 33
2 12 3030 300300
3 300300 30003000
4 34 30003000 3×1043 \times 10^4
5 28 3×1043 \times 10^4 3×1053 \times 10^5