A3928 「ROIR 2026 Day2」位运算魔法

暂无评定 传统题 ROIR(俄罗斯) 上传者
时间限制1000ms
内存限制512MiB
通过 / 提交0/0

A3928「ROIR 2026 Day2」位运算魔法

暂无评定 传统题 ROIR(俄罗斯) 上传者
时间限制1000ms
内存限制512MiB
通过 / 提交0/0

题目描述

译自 ROI Regional 2026 Day2 T2. Битовая магия

给定三个非负整数 bb、ll 和 rr,以十六进制形式给出(无前导零,除非数字本身为 00)。十六进制使用字符 0-9、A-F,其中 A-F 分别对应十进制的 10-15。

操作 & 表示位与(bitwise AND):对两个数的二进制表示(必要时左补零至相同长度),每一位结果为 11 当且仅当该位上两个数均为 11。要求计算满足以下条件的整数 xx 的个数:l≤x≤rl \leq x \leq r 且 x & b=bx\ \&\ b = b (即 xx 在 bb 的所有 1 位上也必须为 1,xx 包含了 bb 的所有位)。

输出该数量对 109+710^9 + 7 取模的结果(十进制,无前导零)。

输入格式

输入共三行:

  • 第一行:十六进制字符串表示 ll
  • 第二行:十六进制字符串表示 rr
  • 第三行:十六进制字符串表示 bb

每个字符串长度不超过 5000050000,仅含大写字符 0-9、A-F,无前导零。

保证 0≤l≤r0 \leq l \leq r。

输出格式

输出一个整数:满足条件的 xx 数量对 109+710^9 + 7 取模的结果(十进制)。

8
F
5

2

满足条件的 xx(十六进制)为 D 和 F,共 22 个。

2
F9
A

60

数据范围与提示

详细子任务附加限制及分值如下表所示:

子任务 分值 附加限制 子任务依赖
11 1010 0≤r,b<164, l=00 \leq r, b < 16^4,\ l = 0
22 55 0≤l,r,b<1640 \leq l, r, b < 16^4 11
33 1010 0≤r,b<167, l=00 \leq r, b < 16^7,\ l = 0
44 66 0≤l,r,b<1670 \leq l, r, b < 16^7 1∼31 \sim 3
55 1010 0≤r,b<1615, l=00 \leq r, b < 16^{15},\ l = 0 1,31, 3
66 77 0≤l,r,b<16150 \leq l, r, b < 16^{15} 1∼51 \sim 5
77 1414 0≤r,b<161000, l=00 \leq r, b < 16^{1000},\ l = 0 1,3,51, 3, 5
88 77 0≤l,r,b<1610000 \leq l, r, b < 16^{1000} 1∼71 \sim 7
99 1111 0≤r,b<1650000, l=00 \leq r, b < 16^{50000},\ l = 0 1,3,5,71, 3, 5, 7
1010 1212 0≤l,r<1650000, b=00 \leq l, r < 16^{50000},\ b = 0
1111 88 0≤l,r,b<16500000 \leq l, r, b < 16^{50000} 1∼101 \sim 10