luogu#P10246. Exciting Days

Exciting Days

题目背景

网上流传一种说法,称 10102424 日是“程序员节”,因为 10241024 恰好是 2102^{10},而计算机和二进制有密切联系。

如果某个不使用地球历法的外星文明,也不一定用传统的二进制计算机,会不会也有类似的传统呢?

题目描述

某个星球的历法和地球虽然数值上和地球不同,但是其结构和地球人的历法大体相似。具体地,他们的一年有 nn 个月,其中第 ii 个月有 aia_i 天。

定义 mmdd 日的特征值为将 m,dm,d 的十进制写出(不含前导 00)后,直接拼接的结果。例如 3377 日特征值是 373712122020 日特征值是 12201220

如果一个日期的特征值是 kk 的自然数次幂,则称这个日期是广义程序员节。你可以求出这个星球的所有广义程序员节吗?

输入格式

本题有多组测试数据。 输入的第一行有一个正整数 TT,表示测试数据组数。

每组测试数据输入两行。第一行有两个正整数 n,kn,k,含义和题目描述一致;第二行有 nn 个正整数 a1,,ana_1,\ldots,a_n 表示每个月的天数。

输出格式

对于每组测试数据,先输出一行一个自然数表示广义程序员节个数;再输出若干行,每行一对用空格隔开的正整数 m,dm,d 表示 mmdd 日表示一个程序员节。

在同一组测试数据中,输出的日期应按照一年当中的顺序输出。

2
2 1
11 12
12 2
31 29 31 30 31 30 31 31 30 31 30 31

0
7
1 6
1 28
3 2
5 12
6 4
10 24
12 8

提示

【样例解释】

对于第一组数据,外星人的日历有两个月,第一个月有 1111 天,第二个月有 1212 天。现在要求特征值是 11 的整数次幂,只能是 11,然而日期的特征值至少是两位数,因此不存在符合要求的日期。

对于第二组数据,这是地球人闰年时的公历,不难发现输出的日期特征值确实都是 22 的自然数次幂。

【数据范围】

本题共 2525 个测试点,每个 44 分。数据范围中,n\sum n 表示所有测试数据的 nn 之和,例如样例的 n=14\sum n=14

测试点编号 TT\le n\sum n\le aia_i\le 特殊性质
11 11 10001000 k=6k=6
232\sim 3
464\sim 6 33
7117\sim 11 10410^4
121412\sim 14 11 3×1053\times 10^5 10910^9
151715\sim 17 33
181918\sim 19 10410^4 10410^4 n=1n=1
202120\sim 21 9×1049\times 10^4 n9n\le 9
222522\sim 25 3×1053\times 10^5

对于全部数据,保证 1T1041\le T\le 10^41n3×1051\le n\le 3\times 10^51n3×1051\le \sum n\le 3\times 10^51ai,k1091\le a_i,k\le 10^9,输入皆为整数。

为避免卡常,题目保证单个测试点输出的日期不超过 2×1042\times 10^4 个。