seuOJ496 - 自动式乘法
- 题目类型:传统
- 输入文件:标准输入流
- 输出文件:标准输出流
- 时间限制:1000 ms
- 空间限制:1024 MiB
- 题目标签:Div.2, 2024
题目描述
有一个长度为 n=105 的序列 a0,a1,⋯,an−1 ,初始时 a0=A,a1=B,a2=a3=⋯=an−1=0 。
你可以进行两种操作至多共 58 次:
-
+ i j k :令 ak=ai+aj
-
< i j k :令 ak=[ai<aj]
在你的操作中,都应该满足 0≤i,j,k<n 且每次操作完后序列 a 中所有数字都不超过 2×1018 。
你需要构造一种操作序列使得执行完所有操作后 a2=A×B 并输出你的所有操作。
[expr] 代表取表达式 expr 的布尔值,例如 [1<2]=1,[1<1]=[2<1]=0。
输入格式
第一行输入两个整数 A,B(0≤A,B≤109) 。
输出格式
第一行,输出一个整数 m(0≤m≤58) 代表操作数。
第 2 到 m+1 行按照两种操作的格式输出你进行的操作。
任何满足题目要求的答案都会被判做正确的。
样例
输入样例
输出样例
4
< 2 0 3
+ 2 0 2
+ 2 1 2
+ 2 0 2
提示
在样例中,序列 a 的变化如下:
[3,3,0,1,...]
[3,3,3,1,...]
[3,3,6,1,...]
[3,3,9,1,...]