CHDOJ
首页
题库
题单
比赛
评测
用户
讨论
帮助
工具
云剪贴板
树图画板
代码对比
登录
注册
3068: 彩虹岛最后的防线
时间限制:1000 ms
内存限制:128 MB
上传者:
提交:3
通过:2
提交
提交记录
讨论
统计
题目描述
彩虹岛为了驱逐以大魔王为首的邪恶势力,进行了秘密的军事训练,这一场训练有$n$ 个士兵参加,众所周知,这些士兵不仅要进行熟练的配合训练,还要有模拟对抗训练。
在一场模拟训练中,起初每个士兵之间都是“独立”的, 彩虹岛总司令希望进行$m$次配合训练,他每次会随机选取两个士兵进行单独的配合训练,训练之后,这两个士兵就会建立搭档关系,搭档关系是可以传递的,也就是说如果 $x$ 与 $y$ 是搭档关系并且 $y$ 与 $z$ 也是搭档关系,那么 $x$ 与 $z$ 也具有搭档关系。
另外,总司令还希望知道每次配合训练之后,要进行对抗训练的方案数。所谓对抗训练,就是指要从$n$个人中挑选出$3$个人进行对抗训练,并且他们相互之间都不具有“搭档关系”。当且仅当两个方案中有大于等于一名士兵不同时,这两个方案不同。
在这之前,总司令还想知道下令进行第一次配合训练之前,可以进行对抗训练的方案数。
输入格式
第一行包括两个整数$n,m(1<=n<=100000,1\le m \le 200000)$,表示有$n$个人,总共进行$m$次配合训练。
接下来有 $m$ 行,第 $i$ 行 包括两个整数 $x$ 和 $y~(1\le x\le n, 1\le y \le n,x \neq y)$,表示第 $x$ 个士兵与 $y$ 个士兵进行配合训练。
第 $x$ 人可能已经与第 $y$ 个人具备“搭档关系”。
输出格式
输出 $m+1$ 行,每一行包含一个整数,第$i+1$行的整数表示进行$i$次配合训练之后,对抗训练可选的方案数。
因为要输出一开始以及每次配合训练后的答案,所以共有 $m+1$ 行的输出。
输入样例
复制
6 6 1 2 3 4 4 5 3 5 3 6 2 4
输出样例
复制
20 16 12 6 6 0 0
分类标签
2019年长安大学第六届程序设计竞赛新生赛