[NFLSPC #6] 1064 病毒
题目背景
你的电脑中了 1064 病毒,现在电脑里储存的所有数字都开始坍缩了!
为了更彻底地毁灭你的电脑,对于十进制下的 $n$ 位数,邪恶的 1064 病毒会将它按照某种规则迭代至少 $n + 1$ 次,以确保你无法还原。
面对 1064 病毒,你手足无措。但是作为 OIer 的你想知道道道道道道道道道道道到到到到到到到到
题目描述
定义数字串为只含有数码 $0\sim 9$ 的串,奇数数码为 $1, 3, 5, 7, 9$,偶数数码为 $0, 2, 4, 6, 8$。
对数字串 $x$,设其中奇数数码,偶数数码和总数码个数分别为 $a, b, c$,则 $a + b = c = |x|$。定义 $g(x)$ 为将 $a, b, c$ 依次写下得到的数字串,**不忽略前导零**。例如 $g(\texttt{0}) = \texttt {011}$,$g(\texttt{1064}) = \texttt{134}$,$g(\texttt {822}) = \texttt {033}$,$g(\texttt{1092515503}) = \texttt{7310}$。
设 $f_k(x)$ 表示将 **数字** $x$ **忽略前导零** 写成数字串 $x'$ 后,将 $g(x')$ 迭代 $k$ 次得到的数字串对应的数字,即设 $x ^ * = g(g(\cdots g(x')))$(共有 $k$ 个 $g$),则 $f_k(x)$ 为将 $x ^ *$ 写成数字后的结果。
给定 $n, k$(**保证 $n < k$**),求 $\sum_{i = 0} ^ {10 ^ n - 1} f_k(i)$。
多组数据。
输入输出格式
输入格式
第一行一个整数 $T$。
接下来 $T$ 行,每行两个整数 $n, k$ 表示一组数据。
输出格式
对每组数据,输出一行一个整数表示答案。
输入输出样例
输入样例 #1
1
0 1
输出样例 #1
11
说明
对于所有数据,$1\leq T\leq 60$,$0\leq n < k \leq 10 ^ 5$,$\sum k\leq 10 ^ 5$。
- 测试点 1($30$ 分):$n\leq 5$,$k\leq 15$。
- 测试点 2($70$ 分):无特殊限制。
Source:NFLSPC #6 F by Alex_Wei