| 题目名称 | 3238. 传递秘密 |
|---|---|
| 输入输出 | chuandi.in/out |
| 难度等级 | ★★☆ |
| 时间限制 | 5000 ms (5 s) |
| 内存限制 | 256 MiB |
| 测试数据 | 5 |
| 题目来源 |
|
| 开放分组 | 全部用户 |
| 提交状态 | |
| 分类标签 | |
| 分享题解 |
| 通过:1, 提交:1, 通过率:100% | ||||
|
|
100 | 15.672 s | 6.97 MiB | C++ |
| 关于 传递秘密 的近10条评论(全部评论) |
|---|
2020年到了,SY国走了许多人,也来了许多新人。为了让新人尽快融入团体,SY国全体人员玩了一把游戏。
游戏的规则是:所有人围成一个圈,按1,2,3···n编号,先由1号同学分享一个他的秘密给一个人(比如他分享给了3号),再由被分享的那个人(即3号)再分享给另外一个人。
求出1号经过m次传递后收到他分享出去的秘密的方案数。答案对998244353取模。
一次只能分享给一个人。
秘密不能分享给自己。
秘密可以连续在两个人之间分享。(就是说1号分享给3号,3号再分享给1号,这种情况是合法的)
到此为止这道题很简单,直到我们发现参与其中的某些人是单相思关系( 但是也有些人是没有喜欢的人 )。。。
众所周知,人们不想让自己喜欢的人知道自己的秘密,所以一个人可能会分享给其他所有人(除了他喜欢的人)。
一个人可能喜欢多个人。(别吐槽我)
第一行三个整数n,m,k。代表参与的人数,传递次数和喜欢关系的个数。 接下来k行,给出单相思名单(ai,bi)(表示ai喜欢bi)。
输出一个整数,表示 m 轮后传回给 1 号的合法方案数对998244353取模后的结果。
2 1 0
0
3 3 0
2
7 13 5 1 3 4 5 5 4 6 1 2 2
443723615
对于 100%的数据:1≤n≤10^9,0≤m≤1000,0≤k≤min(n×(n−1),5×10^4)1≤ai,bi≤n,不保证 ai,bi 不相等(意思就是自恋)。