起床困难综合症

题目描述

为了打败起床困难综合症去打败睡眠boss,boss有扇防御门,每扇门包含一个运算符()和一个运算数(非负整数),攻击经过这扇门后将与门进行相应的运算操作。

勇士的初始攻击力只能是之间的一个整数,门及其摆放是固定的,勇士想通过合适的攻击以对boss照成最大的伤害。

输入样例

解释:一共扇门,初始攻击在~之间,第一扇门将与攻击和5进行与运算,第二扇将第一扇运算后的结果与6进行或操作,最后一扇门将前面的结果与7进行异或。

样例输出

解释:假设初始攻击力为,则经过如下运算:

获得最终攻击力为1。在~中找不到另外一个数使得最终运算的结果大于

解题思路

攻击力的每一位与另一位互不影响。的数据不超过位。

我们只需要分别看每一位(0和1两种情况),如果这一位是通过所有门后将会变成什么、如果是又会变成什么。

更多解释请见代码注释