# T1. 细胞分裂实验室

时间:1000ms

空间:512MB

文件:diversion.in / .out

有一种细胞,每个细胞有两个属性:能量值( EE )和分裂阈值 ( TT )。

当一个细胞的能量值的两倍不超过该细胞的分裂阈值(即 2ET2E \leq T)时,这个细胞就会分裂成两个细胞。这两个细胞的属性如下:

设原细胞的能量值为 EE,分裂阈值为 TT,则:

  • 第一个细胞:能量值为 EE,分裂阈值为 [E+T2] [{\frac {E + T}2}]

  • 第二个细胞:能量值为 [E+T2]+1 [{\frac {E + T}2}] + 1,分裂阈值为 TT

现在,有一个这种细胞,求所有分裂完成后,最终细胞的数量及它们的能量值和分裂阈值。

输入

两个整数 x,y(106)x, y(\leq 10^6),表示第一个细胞的能量值和分裂阈值。

输出

第一行,一个整数 nn,表示分裂完成后的细胞数量。

接下来 nn 行,每行两个以空格分隔整数,表示分裂完成后每个细胞的能量值和分裂阈值,能量值大的应先输出,如果能量值相同则分裂阈值较大的优先输出。