P16805 [蓝桥杯 2026 国 Python A] 算电协同
题目描述
$2026$ 年,“算电协同”首次写入政$ $府工作报告,与超大规模智算集群一同被列为国家级新基建工程,支撑全国一体化算力调度体系建设。在工程实施中,国家算力枢纽节点需要实时管理大量算力单元。
每个算力单元都有一个非负整数形式的能效值 $v$。为了优化能源调度,调度系统需要统计满足“协同条件”的单元对数量。定义两个算力单元 $(i, j)$ 为一组协同单元对,当且仅当:
* $i < j$;
* $\text{Fib}(v_i + v_j) = \text{Fib}(v_i) + \text{Fib}(v_j)$。
其中 $\text{Fib}(x)$ 表示第 $x$ 个斐波那契数。斐波那契数列的计算规则如下:
* $\text{Fib}(0) = 0$;
* $\text{Fib}(1) = 1$;
* 对于 $x \ge 2$, $\text{Fib}(x) = \text{Fib}(x-1) + \text{Fib}(x-2)$。
现在,你需要维护一个初始为空的算力单元池,并处理 $q$ 次操作:
* $1\ k\ v$: 增加 $k$ 个能效值为 $v$ 的算力单元。
* $2\ k\ v$: 减少最多 $k$ 个能效值为 $v$ 的算力单元。如果当前能效值为 $v$ 的单元不足 $k$ 个,则全部移除。
* $3$: 查询当前共有多少组协同单元对。
对此,请你编写程序模拟该调度系统的运行,并针对每次查询给出对应结果。
输入格式
第一行包含一个正整数 $q$,表示操作次数。
接下来的 $q$ 行,每行描述一个操作:
* $1\ k\ v$: 增加 $k$ 个能效值为 $v$ 的单元。
* $2\ k\ v$: 减少最多 $k$ 个能效值为 $v$ 的单元。
* $3$: 查询当前协同单元对总数。
输出格式
对于每个 $3$ 操作,输出一行一个整数,表示当前的协同单元对总数。
说明/提示
### 【评测用例规模与约定】
对于 $30\%$ 的评测用例,$1 \le q \le 10^3$,$1 \le k \le 10$。
对于所有评测用例,$1 \le q \le 2 \times 10^5$,$0 \le v \le 10^9$,$1 \le k \le 10^3$。