[閒聊] 被制約的頭腦

看板CSSE作者 (lala)時間19年前 (2005/05/27 09:28), 編輯推噓6(605)
留言11則, 4人參與, 最新討論串1/11 (看更多)
從 10 加到 10000 的程式要怎麼寫 10000個programer應該有9990個會用for或是類似的迴圈寫 int result=0; for(int a = 10 ; a <=10000 ; a++){ result += a; } 一定只能這樣寫嗎?? int a =10 , b=10000 , result = 0; result = (a+b)*(b-a+1)/2 ; -------> 小學的梯形運算 用for是得跑 9990次的加法運算 用梯形運算只需要 三次加法(減也算加) 一次整數乘 一次整數除 因為是除以2 , 應該還可以用shift的方式加速 有一股蛋蛋的憂傷 我的頭腦有一種被制約的感觸 -- 不過如果上天肯在給我一次機會 我大概還是會用for去寫吧 因為連乘跟連除都可以用:p -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.207.170 ※ 編輯: giive 來自: 140.112.207.170 (05/27 09:33)

61.62.49.43 05/27, , 1F
直覺的做法也未必就是不好啊:)
61.62.49.43 05/27, 1F

61.62.49.43 05/27, , 2F
如果不是效能瓶頸,只用這麼一次
61.62.49.43 05/27, 2F

61.62.49.43 05/27, , 3F
這麼緇珠必較又是何苦咧XD
61.62.49.43 05/27, 3F

140.112.207.170 05/27, , 4F
不是這個意思 , 只是驚覺我的頭腦已經想不出for以ꔠ
140.112.207.170 05/27, 4F

140.112.207.170 05/27, , 5F
外的作法 , 感覺有種被制約的感覺
140.112.207.170 05/27, 5F

140.129.22.232 05/27, , 6F
真的有那麼多人會這樣寫嘛
140.129.22.232 05/27, 6F

61.62.49.43 05/27, , 7F
可能這個問題不那麼直接,不妨試試更常見的問題.
61.62.49.43 05/27, 7F

61.62.49.43 05/27, , 8F
要將一個多維陣列有規律地填入特殊的值的作法:)
61.62.49.43 05/27, 8F

61.62.49.43 05/27, , 9F
"一定要怎麼樣"跟"一定不要怎麼樣"
61.62.49.43 05/27, 9F

61.62.49.43 05/27, , 10F
我不認為這兩種態度是不同的事:)
61.62.49.43 05/27, 10F

218.171.136.77 05/29, , 11F
看到你的程式,讓我聯想到ILP跟SIMD指令集加速
218.171.136.77 05/29, 11F
文章代碼(AID): #12bdUgTZ (CSSE)
討論串 (同標題文章)
文章代碼(AID): #12bdUgTZ (CSSE)