题目名称 287. [NOI 2008]假面舞会
输入输出 party2008.in/out
难度等级 ★★★☆
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 10
题目来源 GravatarBYVoid 于2009-03-01加入
开放分组 全部用户
提交状态
分类标签
NOI 图论 并查集
分享题解
通过:159, 提交:374, 通过率:42.51%
GravatarLGLJ 100 0.019 s 7.57 MiB C++
GravatarTroywar 100 0.022 s 5.25 MiB C++
Gravatar~玖湫~ 100 0.022 s 31.31 MiB C++
Gravatar泪寒之雪 100 0.026 s 2.32 MiB C++
Gravatar泪寒之雪 100 0.027 s 2.32 MiB C++
GravatarTroywar 100 0.027 s 5.25 MiB C++
GravatarTroywar 100 0.027 s 5.25 MiB C++
GravatarTroywar 100 0.028 s 5.25 MiB C++
GravatarTroywar 100 0.028 s 5.26 MiB C++
GravatarHzoi_QTY 100 0.029 s 5.25 MiB C++
关于 假面舞会 的近10条评论(全部评论)
233
Gravatar梦那边的美好ET
2019-05-28 20:55 8楼
qsy接好
GravatarCooook
2017-07-12 10:11 7楼
@hzoi_QTY 66666
GravatarHallmeow
2017-07-11 21:47 6楼
纯并查集,细节巨多
Gravatar泪寒之雪
2017-06-18 21:06 5楼
安利一下并查集
Gravatar半汪
2016-10-25 19:47 4楼
Orz Beyond the Void学长的解题报告!
GravatarFoolMike
2016-10-25 19:00 3楼
Gold Miner!
GravatarGDFRWMY
2013-09-18 13:02 2楼
特了个判的,喵= =
Gravatarcstdio
2013-06-04 20:47 1楼

287. [NOI 2008]假面舞会

★★★☆   输入文件:party2008.in   输出文件:party2008.out   简单对比
时间限制:1 s   内存限制:128 MiB

【问题描述】

一年一度的假面舞会又开始了,栋栋也兴致勃勃的参加了今年的舞会。今年的面具都是主办方特别定制的。每个参加舞会的人都可以在入场时选择一个自己喜欢的面 具。每个面具都有一个编号,主办方会把此编号告诉拿该面具的人。为了使舞会更有神秘感,主办方把面具分为k (k≥3)类,并使用特殊的技术将每个面具的编号标在了面具上,只有戴第i 类面具的人才能看到戴第i+1 类面具的人的编号,戴第k 类面具的人能看到戴第1 类面具的人的编号。

参加舞会的人并不知道有多少类面具,但是栋栋对此却特别好奇,他想自己算出有多少类面具,于是他开始在人群中收集信息。

栋栋收集的信息都是戴第几号面具的人看到了第几号面具的编号。如戴第2号面具的人看到了第5 号面具。栋栋自己也会看到一些编号,他也会根据自己的面具编号把信息补充进去。由于并不是每个人都能记住自己所看到的全部编号,因此,栋栋收集的信 息不能保证其完整性。现在请你计算,按照栋栋目前得到的信息,至多和至少有多少类面具。由于主办方已经声明了k≥3,所以你必须将这条信息也考虑进去。

【输入格式】

输入文件第一行包含两个整数n, m,用一个空格分隔,n 表示主办方总共准备了多少个面具,m 表示栋栋收集了多少条信息。

接下来m 行,每行为两个用空格分开的整数a, b,表示戴第a 号面具的人看到了第b 号面具。相同的数对a, b 在输入文件中可能出现多次。

【输出格式】

输出文件包含两个数,第一个数为最大可能的面具类数,第二个数为最小可能的面具类数。如果无法将所有的面具分为至少3 类,使得这些信息都满足,则认为栋栋收集的信息有错误,输出两个-1。

【输入样例1】

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

【输出样例1】

4 4

【输入样例2】

3 3
1 2
2 1
2 3

【输出样例2】

-1 -1

【数据规模和约定】

50%的数据,满足n ≤ 300, m ≤ 1000;

100%的数据,满足n ≤ 100000, m ≤ 1000000。