随笔分类 -  算法

摘要:以下是最小生成树+并查集 【HDU】 1213 How Many Tables 基础并查集★ 1272 小希的迷宫 基础并查集★ 1325&&poj1308 Is It A Tree? 基础并查集★ 1856 More is better 基础并查集★ 1102 Constructing Roads 阅读全文
posted @ 2020-11-11 07:03 立体风 阅读(225) 评论(0) 推荐(0)
摘要:经常有这样的问题,要求打印如下格式: 进而要求,如果abcde有为0的值,取消打印,假设:a=1,b=0,c=12,d=0,e=5或者,a=0,b=2,c=0,d=10,e=0等等,要求打印: 思路:先找到第一个不为0的,打印出来,然后,将‘,'号放到后面的数的前面,类似",c"这样,完成打印,具体 阅读全文
posted @ 2018-04-08 08:46 立体风 阅读(600) 评论(0) 推荐(0)
摘要:在加密系统中,长长要求把一行字符看作是一串二进制位,然后对某个固定的数进行求余运算。 解答: 阅读全文
posted @ 2018-02-11 19:52 立体风 阅读(312) 评论(0) 推荐(0)
摘要:printf函数没有这个功能,如果想打印一个数的二进制形式,就得自己计算。下面是我看到的最简便的算法: 1、如何理解 n&1<<i?1:0 ,加上括号: (n&(1<<i))?1:0 2、因为int类型有4个字节,所以也就是32位二进制,从bit0到bit31,所以,1<<i,就是将1位移31,然后 阅读全文
posted @ 2018-01-21 10:11 立体风 阅读(1868) 评论(0) 推荐(0)
摘要:1、对一个数位与1是用来取位,n&1就可以将数字n最低位取出,如果n最低位是0(这里指n的二进制表示,所有的数在内存均是以二进制形式表示),那么表示n为偶数,因为最低位为0,表示可以整除2,这是二进制常识(如果不理解,可以看110,1230,350,201,29810这几个随机选的10进制数那些可以 阅读全文
posted @ 2018-01-21 09:55 立体风 阅读(5890) 评论(0) 推荐(0)
摘要:函数pow(x,y)实现运算x^y,即x的y次方,这里x和y都为整数。 算法的基本思想是,减少乘法次数,重复利用结算结果,例如: x^4,如果逐个相乘的话,需要四次乘法。如果我们这样分解(x^2)*(x^2)就只需要2两次乘法,因为x^2的结果我们可以重复利用。所以我们最好做对称的分解指数y,然后求 阅读全文
posted @ 2018-01-08 22:25 立体风 阅读(3175) 评论(0) 推荐(0)