http://acm.hdu.edu.cn/showproblem.php?pid=1565 对于每一个数,取或者不取,用0表示不取,1表示取,那么对于每一行的状态,就可以用一个二进制的数来表示.比如5的二进制为101,就表示取第一个数,不取第二个数,取第三个数. 将符合要求的状态保存下来,什么是符合要求的呢?即二进制数中不存在相邻的1(110,011都是不符合要求的).可以用移位并按位与的办法来判断,举个例子:110左移一位为011 ,110&011 = 1,不符合要求:101左移一位为010…