作者asail0712 (emeth)
看板Programming
标题[问题] 效率的问题~!?
时间Fri Jun 19 09:41:09 2009
我最近有空闲 所以在做ACM的题目
其中有需要做
n /= 2的动作
我以为改成 n >>= 1 直接做shift会比较快 但是事实上却没有
另外要做 n % 2 == 0 的判断
我改成 (n & 00000000000000000001) == 00000000000000000000
但是ACM跑出来的时间并没有缩短
我一直以为计算改成位元组的 shift 或是 and 跟 or 会比较快
请问我这些观念是不是错误的!!??
--
(好痛>"<)~ ( ̄ε(# ̄)☆ o# O╮o( ̄皿 ̄o) ~(看我的杀球~~!!!!)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 124.11.141.41
1F:→ jlovet:因为compiler编译成组语的时候就是这麽做的140.123.102.167 06/19 14:04
2F:→ jlovet:他们发现除二的次方被的时候本来就会用shif140.123.102.167 06/19 14:05
3F:→ jlovet:而不是用div140.123.102.167 06/19 14:05
4F:推 Huangs:差异很微小 ACM online judge不一测得出来 218.167.6.113 06/20 06:53
5F:推 bobhsiao:快慢有些是IO的关系,存起来一并输出较快 219.85.82.131 06/20 09:36
6F:→ freesamael:n & 1 == 0 就可以了,不用自己补 0...118.231.107.246 06/20 12:32
7F:推 bobhsiao:开头补0,是8进位的表示法 219.85.82.131 06/20 20:04