#HK5105. 「POI2009 R3」单词 Words
「POI2009 R3」单词 Words
题目描述
题目译自 XVI OI Olimpiada Informatyczna – III etap Słowa
设 为定义在由数字 和 组成的字符串上的函数。函数 将字符串 转换为新字符串,规则为:同时且独立地将每个 替换为 ,每个 替换为字符串 。例如,$h(\texttt{1001}) = \texttt{101110},h(\texttt{""}) = \texttt{""}$(即空字符串映射为空字符串)。显然, 是一一映射。记 为函数 与自身 次复合,特别地, 为恒等函数,即 。
我们关注形如 的字符串,其中 。以下是前几个字符串: $\texttt{0}, \texttt{1}, \texttt{10}, \texttt{101}, \texttt{10110}, \texttt{10110101}$。
若字符串 是 的子串,则 作为 的连续子序列出现。给定自然数序列 ,任务是判断字符串
$$h^{k_1}(\texttt{0}) \cdot h^{k_2}(\texttt{0}) \cdot \ldots \cdot h^{k_n}(\texttt{0}) $$是否为某个 的子串,其中 表示字符串拼接(连接)。
输入格式
第一行包含一个整数 ,表示测试数据组数。
每组测试数据包含:
- 第一行:一个整数 。
- 第二行: 个非负整数 ,用单空格分隔。每组测试数据中第二行数字之和不超过 。
输出格式
输出 行,每行对应一组测试数据,若 $h^{k_1}(\texttt{0}) \cdot h^{k_2}(\texttt{0}) \cdot \ldots \cdot h^{k_n}(\texttt{0})$ 是某个 的子串,输出 TAK,否则输出 NIE。
2
2
1 2
2
2 0
TAK
NIE
- 第一组测试数据的字符串为 ($h^1(\texttt{0}) = \texttt{1}, h^2(\texttt{0}) = \texttt{10}$,拼接得 ),它是 的子串。
- 第二组测试数据的字符串为 ($h^2(\texttt{0}) = \texttt{10}, h^0(\texttt{0}) = \texttt{0}$,拼接得 ),它不是任何 的子串。