AT_abc245_f.[ABC245F] Endless Walk
提高+/省选-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一个包含 N 个顶点和 M 条边的简单有向图 G,顶点编号为 1 到 N。第 i 条边从顶点 Ui 指向顶点 Vi。
高桥君可以从某个顶点出发,沿着有向边不断从一个顶点移动到另一个顶点。请你求出有多少个顶点满足:高桥君可以通过巧妙地选择路径,从该顶点出发,无限次地重复移动。
输入格式
输入通过标准输入给出,格式如下:
N M
U1 V1
U2 V2
⋮
UM VM
输出格式
输出满足条件的顶点个数。
输入输出样例
输入#1
5 5 1 2 2 3 3 4 4 2 4 5
输出#1
4
输入#2
3 2 1 2 2 1
输出#2
2
说明/提示
限制条件
- 1≤N≤2×105
- 0≤M≤min(N(N−1), 2×105)
- 1≤Ui,Vi≤N
- Ui=Vi
- 若 i=j,则 (Ui,Vi)=(Uj,Vj)
- 所有输入均为整数。
样例解释 1
如果从顶点 2 出发,可以按照“顶点 2 → 顶点 3 → 顶点 4 → 顶点 2 → 顶点 3 → ⋯”这样的路径无限次移动。从顶点 3、顶点 4 出发也同理。如果从顶点 1 出发,最初可以移动到顶点 2,之后也可以无限次移动。另一方面,从顶点 5 出发则无法移动。
因此,满足条件的顶点为顶点 1、2、3、4,共 4 个,所以输出 4。
样例解释 2
请注意,在简单有向图中,两个顶点之间可以同时存在方向相反的两条边。此外,G 不一定是连通图。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?