#U26FEB2. [USACO26FEB] Strange Function B

[USACO26FEB] Strange Function B

[USACO26FEB] Strange Function B

题目描述

对于所有正整数 xx,定义函数 f(x)f(x) 如下:

  • 如果 xx 包含任何不是 0011 的数字,则将 xx 的每一位数字,若为奇数则设为 11,否则设为 00,并返回得到的 xx
  • 否则,返回 x1x-1

给定一个 xx1x<1021051 \leq x < 10^{2\cdot 10^5}),求需要将 ff 应用于 xx 多少次,直到 xx 变为 00。由于这个次数可能非常大,输出其对 109+710^9+7 取模的余数。

输入格式

第一行包含 TT1T1051\le T\le 10^5),表示独立测试用例的数量。

接下来的 TT 行,每行包含一个正整数 xx,仅由数字 0-9 组成,且没有前导零。

保证所有输入整数的总位数不超过 10610^6

输出格式

对于每个测试用例,输出一行,包含该次数对 109+710^9+7 取模的余数。

输入输出样例 #1

输入 #1

2
24680
210

输出 #1

1
4

输入输出样例 #2

输入 #2

1
1234567890123456789012345678901234567890

输出 #2

511620083

说明/提示

样例 1 解释

第一个测试:xx 经过一次操作后变为 00

第二个测试:f(x)=10f(x)=10f2(x)=9f^2(x)=9f3(x)=1f^3(x)=1f4(x)=0f^4(x)=0

评分标准

  • 输入 3-5:T2000T\le 2000x<109x<10^{9}
  • 输入 6-7:x<1018x<10^{18}
  • 输入 8-9:x<1060x<10^{60}
  • 输入 10-12:无额外限制。

题目来源:Aiden Bai

翻译由 DeepSeek 完成

统计

相关

在下列比赛中:

校队选拔