原题来自 2025 年洛谷愚人节比赛的 E 题。
提示:若是使用“提交代码”的方式进行提交,在评测时会给程序输入一个数字(1, 2, 3, ..., 7)表示测试点编号,请在程序中直接输出对应测试点的答案。
您需要编写指令,完成给定的计算任务。
在以下指令中,小写字母 v 开头的参数表示十进制无符号常数,大写字母 R 开头的参数表示寄存器。寄存器均为 64 位无符号整数。您可以自由使用的寄存器有六个:a、b、c、d、x、y。除非特别说明,否则所有寄存器初始值均为 。
| 指令格式 |
描述 |
+ R1 R2 |
使 R1 寄存器加上 R2 的值 |
- R1 R2 |
使 R1 寄存器减去 R2 的值 |
< R1 v |
使 R1 寄存器左移 位,低位补 0 |
> R1 v |
使 R1 寄存器右移 位,高位补 0 |
^ R1 R2 |
使 R1 寄存器异或上 R2 的值 |
! R1 |
输出 R1 寄存器的值 |
= R1 v |
使 R1 寄存器的值变为 |
* R1 R2 |
使 R1 寄存器乘上 R2 的值 |
/ R1 R2 |
使 R1 寄存器除以 R2 的值 |
| 编号 |
输入方式 |
任务 |
PC 数限制 |
特殊条件 |
分值 |
| 1 |
寄存器 x 里保存 |
输出 |
|
|
|
| 2 |
输出 (下取整) |
|
在 32 位无符号整数范围内 |
| 3 |
输出 |
保证 不为 |
| 4 |
寄存器 x、y 里保存 、 |
输出 的值 |
|
答案自然溢出即可(即对 取模) |
| 5 |
输出 的值 (下取整) |
和 在 32 位无符号整数范围内,保证 不为 |
|
| 6 |
寄存器 x 里保存 |
输出 的值 (下取整) |
|
|
| 7 |
输出大于等于 的最小的 的次幂 |
|
保证 不为 且答案在 64 位无符号整数范围内 |