言语攻击 T3
题目描述
从前有n 个人,愉快地生活在一起。直到有一天他们学会了互黑。
每个人都有且仅有一个黑的目标(这个目标有可能是他自己,这叫自黑)。对于那些没人黑
的人(其他所有人黑的目标都不是他),他们想刷存在感,于是可以选择放弃黑自己的目标而选
择自黑(也就是二选一)。
注意只有一开始没有作为任何人的目标的人才可以放弃目标选择自黑。
规定轮到某个没有被黑的人时,必须且仅能黑一次。所有被黑过的人都不能再黑别人了。
当然一个人可以被黑很多次。
由你来决定一个顺序,大家按照顺序行动。求问最后被黑的人数的最小值和最大值。
输入格式
第一行一个整数n
第二行n 个整数,第i 个整数ai 表示第i 个人的目标,满足1 <ai <n
输出格式
两个整数,依次表示最小值和最大值
样例输入
8
2 3 2 2 6 7 8 5
3.5
样例输出
3 6
样例解释
最小值:按照1,4,2,3,5,6,7,8 的顺序行动。轮到2,6,8 时它们已经被黑所以他们不能再
黑人。最后被黑的人数是3
最大值:1 和4 自黑,然后剩下的人按照2,3,7,6,5 的顺序行动。这样一来3,6,7,8 也
会被黑。于是一共有6 个人被黑
数据范围及规定
• 对于前30% 的数据,满足1 < n < 8
• 对于接下来30% 的数据,满足只有前若干个人自黑,后面的第i 个人只会黑1 到 i-1 中
的某一个人
• 对于所有数据,满足n < 10^6
信息
- 难度
- (无)
- 分类
- (无)
- 标签
- (无)
- 递交数
- 0
- 已通过
- 0
- 通过率
- ?
- 上传者