#524. Toriel的花园布置

内存限制:16 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: Liop

题目描述

又到了遗迹里面繁花盛开的季节!

Toriel准备将自己培养的花在花园里面整齐的摆在各个花坛里,而自告奋勇来帮忙的Frisk则努力的想让这些花坛更加美观。

Toriel目前只准备了两种花,Frisk决定首先找到一个快速的表示一个花坛内的一排花的方式,Frisk发现可以把这两种花分别编号为 ,然后按照自左到右填入二进制数的高位到低位的方式,就可以用一个二进制数来表示这一排花的组成了!

现在,Frisk要开始设计这些花来让它们更符合Frisk预期中的样子。Frisk会给出如下四种对花坛的操作,希望你可以帮忙在程序中处理,这样Frisk就可以省下手动的搬运花的工夫更方便的规划花坛。

时替换当前编号为 的花坛里面从右往左数第 朵花为编号为 的花。

时分别输出当前编号为 的花坛的里编号为 的花的数量,中间以空格隔开。

时判断当前编号为 的花坛之间最少需要多少次操作 才可以变成一样的花坛。

时按照对应的二进制数的大小对所有花坛重新排序。

在所有的操作结束后,输出最终所有花坛对应的二进制数。

输入格式

不定行输入。

个整数 ,表示花坛的数量。

个整数,分别为 ,其中 表示第 个花坛对应的二进制数的十进制表示。

接下来若干行输入。每行有一个正整数 和对应的输入,用一个空格分开。

输出格式

不定行输出。

对于每一次操作 ,输出 个非负整数,分别表示编号为 的花的数量。

对于每一次操作 ,输出 个非负整数,表示最少操作次数。

最后 行每行输出一个32位二进制数,表示当前编号的花坛对应的二进制数。

样例

【样例输入】

5
0 1 3 7 15
1 1 2 1
2 1
1 1 6 1
3 1 2
1 2 10 1
3 2 3
4

【样例输出】

31 1
3
2
00000000000000000000000000000011
00000000000000000000000000000111
00000000000000000000000000001111
00000000000000000000000000100010
00000000000000000000001000000001

数据范围与提示

unsigned int 范围内

保证操作次数不超过 次,

通告标题

通告内容

已知晓