二幂拆分
Marcus-Bao
这个作者很懒,什么都没留下…
展开
-
二幂拆分问题
感谢这位大佬 2幂拆分问题 最近没有合适的床头书可以看,于是索性把CS:APP(深入理解计算机系统)取下来放在床边,睡不着觉时随意翻一翻,以期稳故知新。在CS:APP第2.3.6小节中提到,由于整数乘法指令通常会比加减法和位运算指令会慢上许多,因此编译器有时会做一个优化:用移位和加减法的组合来代替乘以常数因子的乘法,比如x * 18可以写成(x<<4) + (x原创 2017-07-11 00:04:54 · 961 阅读 · 0 评论 -
HihoCoder - 1527 Fast Multiplication 二幂拆分问题
题目链接 题意: 在写代码时,我们经常要用到类似 x × a 这样的语句( a 是常数)。众所周知,计算机进行乘法运算是非常慢的,所以我们需要用一些加法、减法和左移的组合来实现乘一个常数这个操作。具体来讲, 我们要把 x × a 替换成:(xa0) op1 (xa1) op2 (xa2) ... opn (xan) 这样的形式,其中opi 是+或者-。 举原创 2017-07-11 00:10:57 · 704 阅读 · 0 评论