看板 Prob_Solve 關於我們 聯絡資訊
可以用數學公式來解決這個問題 試著推導出公式 0可以不用看了 1 ~ 100 中間數為50 1~ 49 為一組 51 ~ 99為一組 各組各數為49 1+99 =100 2+98 =100 3+97 =100.....以此類推 共有 49個100 加上 i<= 100 所以100再加一個 等於 50個100 加上原本的中間數 50 答案為5050 可以推導出公式為 (X^2/2) + (x/2) i推到 150 答案為 11325 當然還可以再優化.... 在計算過程中 用位元的變化去處理上述的運算式 也是ok的 看有沒有大大還有其他解....囉..... ※ 引述《asleepme (冬天了)》之銘言: : ※ [本文轉錄自 Tech_Job 看板] : 作者: asleepme (冬天了) 看板: Tech_Job : 標題: [問題] 面試遇到的程式問題,現在還想不出來... : 時間: Sun Dec 30 13:42:09 2007 : 是當面問的 : 不過他當初是這樣講的: : 有一個for迴圈,從0加到100 : 可是我覺得他不夠快,要怎樣才能讓他更快 : for( i=0; i<=100; i++) : s=s+i; : 不可以用數學公式 : 請忽略宣告或初始化的問題,我想不是重點 : 因為我當初把i=0改成i=1的時候他只是無言的笑了笑 : 請指點 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.87.151.2
gigiball:啊..我這算公式嗎..比較像建構式數學... 01/04 11:31
ClubT:不是有說不能用公式... 01/04 14:06
yun224:我想知道,學校是不是沒有教高斯法啊@@... 01/04 16:27
final01:Gauss幼稚園提出的方法 01/04 16:41
revivalworld:這個證明跟高斯的故事國中不是教過= = 01/04 18:51
Astar:挺難的公式,真佩服你推出來了。 01/04 22:40
phi61023:(X^2/2)+(x/2)不就是[n*(n+1)]/2嗎? 還是使用公式了..Orz 02/21 13:20