题目: 有1000瓶药物,但是其中有一瓶是有毒的,小白鼠吃了一个星期以后就会死掉!请问,在一个星期内找出有毒的药物,最少需要多少只小白鼠?解答: 用二进制的思路去思考,1000瓶药代表了1000种状态,那么1000用二进制表示可以用一个10位的二进制数就可以全部表示出来,考虑用十只白鼠来试验,...
                            
                            
                                分类:
其他好文   时间:
2014-08-18 21:46:22   
                                阅读次数:
582
                             
                    
                        
                            
                            
                                http://acm.hdu.edu.cn/showproblem.php?pid=4419题意:给出3种颜色,重叠会生成新的颜色,然后有一些矩形,求出每种颜色的面积。转化为二进制表示颜色:001 R ,010G,100B,011RG,101RB,....111RGB;在结构体里面加上一个len[8...
                            
                            
                                分类:
其他好文   时间:
2014-08-18 20:20:52   
                                阅读次数:
227
                             
                    
                        
                            
                            
                                要求计算二进制(16位)的逆序,如数12345用二进制表示为: 00110000 00111001将它逆序,我们得到了一个新的二进制数: 10011100 00001100最容易想到的方法就是依次交换两端的数据,从右向左遍历数字,当i位遇到1时,将逆序数字对应的(17-i)位设为1。def r...
                            
                            
                                分类:
其他好文   时间:
2014-08-16 11:04:40   
                                阅读次数:
223
                             
                    
                        
                            
                            
                                HDU 4026 Unlock the Cell Phone(动态规划)
题目大意:
给一张图,问你解锁屏幕的方案数,0 表示按键,当被触摸过可以跳过,1表示不能被跳过,2表示可以被跳过。
问你按键的方法数?
解题思路:
用“ 0 1 ” 的二进制 表示0号按键的状态。...
                            
                            
                                分类:
其他好文   时间:
2014-08-12 17:14:54   
                                阅读次数:
255
                             
                    
                        
                            
                            
                                在计算机中,数值的二进制表示方法主要有:原码、反码和补码。通常取最高位为符号位,0表示正数,1表示负数。正数的原码、反码、补码一样。而负数的原码最高位取1,数值位取负数绝对值的二进制值;反码的符号位为1,其余位取反;补码的符号位为1,其余位取反加1。
在32位计算机中,有符号字符型变量的取值范围是-27 ~ 27-1,有符号整型变量的取值范围是-215~ 215-1,如果将有符号整型变量赋给有符号字符型变量,则高位被截断,保留低八位。...
                            
                            
                                分类:
其他好文   时间:
2014-08-11 00:27:21   
                                阅读次数:
237
                             
                    
                        
                            
                            
                                A.UVALive 6661 题意从1~N中选k个数,和为s的方案数 第一眼搜索,估计错状态量,又去yydp...浪费大量时间 数据很小的,状态数都不会超过2^N...直接dfs就过了//state二进制表示选取的数#include #include #include #include usi...
                            
                            
                                分类:
其他好文   时间:
2014-08-10 01:36:39   
                                阅读次数:
336
                             
                    
                        
                            
                            
                                1的个数时间限制:3000ms | 内存限制:65535KB难度:1描述小南刚学了二进制,他想知道一个数的二进制表示中有多少个1,你能帮他写一个程序来完成这个任务吗?输入第一行输入一个整数N,表示测试数据的组数(1int main(){ int m,N,count ;scanf("%d",&N);w...
                            
                            
                                分类:
其他好文   时间:
2014-08-09 21:09:49   
                                阅读次数:
240
                             
                    
                        
                            
                            
                                IP地址分类 1.A类IP地址 一个A类IP地址由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”, 地址范围1.0.0.1-126.255.255.254(二进制表示为:00000001 00000000 00000000 00000001 - 01111110 111111.....
                            
                            
                                分类:
其他好文   时间:
2014-08-09 13:10:27   
                                阅读次数:
306
                             
                    
                        
                            
                            
                                题目链接  
题意:有n个装备,每个装备分别有5个属性值。要你从中选出k个装备,使得所得的实力加成最多。(每个属性值要选k个装备中最大的那个数值)
思路:5个属性值可以有2^5-1种方案,所以直接暴力枚举所以子集,找出和最大的k个。我们可以预处理每个子集在k个装备中出现的最大值。
PS:二进制表示子集还是很好用的,必须要好好掌握。
参考思路
#incl...
                            
                            
                                分类:
其他好文   时间:
2014-08-08 21:23:06   
                                阅读次数:
277
                             
                    
                        
                            
                            
                                POJ3252问题重述:求解在区间[start, finish]之间的Round Number的数目。所谓Round Number指的是,二进制表示中0的位数大于等于1的位数的整数。分析:1.假如能够分别得到[0, finish] 和 [0, start - 1]区间内的Round Number的数...
                            
                            
                                分类:
其他好文   时间:
2014-08-08 15:53:46   
                                阅读次数:
342