2014-01-10 86 views
0

我總共有10,000個,我想分佈在99個點之間,不是平均分配,而是在一個遞增的線性曲線上。因此,雖然第一點可能只值[例如] 10,但每個接下來的點值得更多,直到最後一點值得[例如] 250左右。但是所有的點數都需要10,000個。我怎麼能這樣做?如何線性分配值

//編輯:10和250的第一個和最後一個值只是一個例子,它們可能是真的。雖然總數(10,000)需要變化,所以如果需要,我可以將其更改爲20,000。

+0

我得到的答案是x_i = 10 + 9010 * i/4851,對於i = 0,1,2,...,98。但最後一個單元格x_98約爲192,而不是250.如果您需要第一個單元格爲10,最後一個單元格爲99,那麼這是不可能的。 – Matt

+0

是否以曲線方式增加線性*或*? – Bergi

+0

我只是在這個問題上添加了一些說明(我沒有想到答案中沒有包含10000個答案!)但是總體數字需要變化,但第一個和最後一個值僅僅是示例並且可以是靈活的。 – Essential

回答

1

取出值爲[1,2,3,4,..,99]的99個單元格,並將每個數字乘以S/4950,其中S是所需的總和(例如S = 10,000)。

+0

感謝您的建議,但我需要一個解決方案,其中10,000總數是可變的。 – Essential

+0

@Essential更新。 – Matt

+0

謝謝馬特!我想知道你是如何得到4950的數字,但後來意識到這是1到99的總和。 – Essential

0

從3開始,上升到199,橫跨99點,總計10,000。這是一個硬件問題嗎?

var total = 0; 
for (var i = 1; i < 100; i += 1) { 
    total += i * 2 + 1; 
} 
alert(total); 
+0

「硬件」在硬件?實際上我試圖在遊戲中分配逐級遞增的遊戲獎勵。但是,這10,000個需要變化。 – Essential

0

這是非常含糊,但如果第一點是價值X和連續點之間的差距是Y那麼總的99個這樣的點是

(99 * X) + (0.5 * 99 * 98 * Y) 

你可以用這個公式來玩耍合適的值爲XY,這樣您的總數就達到了10,000。例如,您可以先修復X,然後解決總計Y,但這可能不會產生可能使其不適合的整數結果。不幸的是,對於某些總數,可能不會有整數解決方案XY,但您的要求看起來相當隨意,所以我確信您可以使用上述方法得出合適的值X,Y以及您的需求總量。它可以爲你服務,直到你得到更好的答案。

+0

感謝您的建議,但我需要一個解決方案,其中10,000個總數是可變的。 – Essential

+0

@重要的我認爲你不明白答案。我說你可以用這個作爲任何總數的指導 - 上面的表達式是給定的起始點的總值,X的值和連續點之間的間距長度Y. – mathematician1975