摘要: 位运算优先级:~>&^|常用运算:置位(set bit)将第bit位置为1A |= 1>bit&1)!=0取最后一个非0位A&-A 原理是:A=0000 0100 -A是将A按位取反然后+1,那么就相当于以最后一个1为分界线,左边全部取反,分界线及其往右是不变的A&((~A)+1)统计非0位fo... 阅读全文
posted @ 2015-02-06 16:18 justPassBy 阅读(462) 评论(0) 推荐(0) 编辑
摘要: 要求找出范围内含有“13”且能被13整除的数字的个数可以使用数位dpdp[i][j][0] 表示长度为i,余数为j,不含13的数字的个数dp[i][j][1] 表示长度为i,余数为j,3开头的数字的个数dp[i][j][2] 表示长度为i,余数为j,含有"13"的数字的个数index[1] = 1;... 阅读全文
posted @ 2015-02-06 15:30 justPassBy 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 1 #include 2 #include 3 int dp[10][3]; 4 int num[10]; 5 /* 6 dp[i][0] 不含62,4 7 dp[i][1] 2开头 8 dp[i][2] 含62或4 9 */10 void init()11 {12 int i;13... 阅读全文
posted @ 2015-02-06 15:08 justPassBy 阅读(211) 评论(0) 推荐(0) 编辑