U632547 【模板】判圈
题目背景

作为一个铁佛寺,你看着你心爱的红色马戏团疯狂的陷入 `We are done!` 和 `We are back!` 的无限循环当中。
一觉醒来,你发现你成为了瓦嗨,你决定要改变这一切。
这一切的起源肯定是循环(~~`Must Be The Cycle`~~),所以你决定先解决循环的问题。
题目描述
给定一个函数 $f(x)$ 和起始值 $x0$,生成序列:
$$x0, f(x0), f(f(x0)), f(f(f(x0))), ...$$
请你找出:
1. 序列是否进入循环
2. 循环的起点值
3. 循环的长度
**注意**:如果输入值不在映射中,函数返回 $(a × a + 1) \% (10^9 + 7)$。
输入格式
- 第一行:整数 $x0$(起始值)。
- 第二行:整数 $n$(函数映射的数量)。
- 接下来 $n$ 行:每行两个整数 $a$,$b$,表示 $f(a) = b$。
输出格式
- 如果找到循环:输出 `循环起点` 和 `循环长度`
- 如果没找到循环:输出 `NO CYCLE!FORZA FERRARI!`。
说明/提示
**解释**:序列是 $0→1→2→3→4→2→3→4→2...$
循环从 $2$ 开始:$2→3→4→2$,长度为 $3$。
$0 ≤ x0, a, b ≤ 10^6,1≤n ≤ 10^6$。
------------
后记:
你仔细观察就会发现,永远没有无环的情况。
说明法拉利的这种循环永远无法打破,而`Forza Ferrari`只是法拉利双退前幻想罢了。