小李和小王在做一个数字游戏。小李写出一个二进制数,小王必须交换其中的两个数字来得出一个新的二进制数(必须进行交换操作且只能交换两个数字)。小李想知道所有得到的新二进制数中第二大的数是几。小王知道怎么计算最大的数,但是他不知道怎么计算第二大的数,你能帮帮他么?
共一行。为小李给出的一个二进制数,不包含前导零。保证所有输入的二进制数通过交换一定能产生至少两个比原数更大的数字。
【解释】如数字:11110000,不论如何交换,交换后一定会变小,这种输入情况不会存在;再比如数字:101000,交换后只会产生一个比他大的数字 110000,无法通过交换得到第二个比原数字更大的数,这种输入情况也不会存在。
共一行。为小王执行交换操作后第二大的二进制数。
【输入样例2】
1110011
【输入样例2】
101010
【输出样例1】
1111001
【输出样例2】
110010
【样例解释1】
交换后最大的二进制数为 1111010,交换的是第四位的 0 和第 七 位的 1。第二大的二进制数为 1111001,交换的是第四位的 0 和第 六 位的 1。
【样例解释2】
交换后最大的二进制数为 111000,交换的是第二位的 0 和第五位的 1。第二大的二进制数为 1111001,交换的是第二位的 0 和第三位的 1。
【数据范围】
对于 30%的数据,保证输入的二进制数长度<=10。
对于 60%的数据,保证输入的二进制数长度<=1000。
对于 100%的数据,保证输入的二进制数长度<=1000000。