状压dp这个假期快做,不能懈怠。看了一下午才看懂那道题,才明白了状压的二进制思想,学到了几个常用位运算。
还有就是查缺补漏,把图论、搜索、贪心的例题看透,小零散时间就看看例题解法,弄清楚思想,大块时间写程序。
把程序例题打印下来,方便放在夹在文件夹里,有空闲的时候就翻翻。不能再浪费时间了 ,下年这个时候时间就很紧张了,水平就很难提高了,所以要有计划的学东西。时间过得太快。
国庆节主要补一些并查集、搜索、最短路的例题,状压dp要认真做.
1.判断一个数字x二进制下第i位是不是等于1。
if(((1<<(i-1))&x)>0)
2.将一个数字x二进制下第i位更改成1。
x=x|(1<<(i-1))
3.把一个数字二进制下最靠右的第一个1去掉。
x=x&(x-1)
4.判断某状态是否有相邻的两者相同。
if(x&x<<1)
5.判断第i为是否为1(这个位是从右数起,从0开始。)
if(x&(1<<i)
if((x>>i)&1)
6.设置第i位为1。
x|=1<<i;
7.设置第i位为0 。
x&=~(1<<i)
8.切换第i位。
x^=1<<i;
--------------------- 本文来自 Jack-Oran 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/qq_34531807/article/details/79313151?utm_source=copy