推 steve1012: 不要這樣寫 04/28 11:32
推 alan23273850: 最後那個當然不對,二進位不是十進位 04/28 11:43
推 cutekid: x+=x&-x ←等於加上 x 最右邊 bit 的那個值唷 04/28 11:49
→ cutekid: 有點「線段樹」的味道~~ 04/28 11:49
→ cutekid: int a[1 << 10] ← int a[1024] 的意思唷, 2^10 = 1024 04/28 11:50
了解,以為1<<10 是指往左邊移動10個位置,謝謝您的解釋
→ djshen: BIT吧 04/28 11:57
推 cphe: 你把1~8的 x&-x 用bit表示就知道為什麼了 04/28 12:17
→ cphe: 這種寫法其實不用去鑽研,除非你很常用,不然一週後你就忘了 04/28 12:18
→ cphe: 再來就是別人也不好讀 04/28 12:18
※ 編輯: zxcv14011 (140.113.91.107), 04/28/2018 18:53:16
推 oToToT: 他在寫binary index tree(fenwick tree)吧 04/28 20:20
推 xavier13540: 前面那格應該是x<=n吧 另外其實我也常常這樣寫@@ 04/29 03:09
→ y3k: 這種寫法還是有其必要性吧?而且其實蠻基本的... 04/30 09:01
→ uranusjr: 基本與否是一回事, 哪裡有必要性?沒有這種語法的語言多 04/30 18:41
→ uranusjr: 得是, 難道這些語言都有根本缺陷做不了正事嗎? 04/30 18:41
推 xavier13540: 是沒有必要性 但這樣寫精簡很多 可讀性也不差 04/30 22:02
推 iamstudent: 不要看太少又不想動腦就罵別人可讀性低 05/01 11:44
→ iamstudent: bitwise operator在driver應用上非常常見 05/01 11:45
→ iamstudent: 而且很多時候往往都是效率上的需求,會具有必要性 05/01 11:46
→ iamstudent: 沒有這類語法的語言,應該不會有人想用在driver上 05/01 11:47
→ iamstudent: 有興趣專研bitwise op的人,推薦去看Hacker's Delight 05/01 11:48
推 Lee1027: 感謝分享 05/08 02:10