回文二进制数
测试数据来自 system/1655
时间限制:1秒 内存限制:256M
【问题描述】
回文二进制数是指从左向右念和从右向左念都一样的数。如 11011 就是一个典型的回文二进制数。现在给定两个整数 和 ,那么在所有的 位的二进制数中(不含前导 0),含有 个数字 1 最大的回文二进制数对应的十进制数是多少?
比如: 时,在 6 位二进制数中含有 4 个 1 的最大回文二进制数是 110011,对应的十进制数为 51。
再如: 是,在 5 位二进制数中含有 3 个 1 的最大回文二进制数是 10101,对应的十进制数为 21。
当然也有不存在解的情况,比如 时,就不存在这样的回文数二进制数。
【输入格式】
输入仅一行两个整数,第一个是整数 ,第二个数整是 。
【输出格式】
输出包含一行,如果不存在解,则输出None,否则输出最大的回文二进制数对应的十进制数。
【输入输出样例1】
Input
Output
【输入输出样例2】
Input
Output
【输入输出样例3】
Input
Output
【数据说明】
对于 的数据 。
【来源】
Mr.he