對不起,如果此問題之前已被詢問,但無法找到與我正在嘗試執行的操作相匹配的匹配項。根據大小對數字範圍進行分區,然後查找該範圍內給定數字的分區的起始位置
我正在尋找一種算法在C#(或相關的LINQ擴展)中執行以下操作。
給定一組數字(例如56 of 1 to 245
)不排除任何數字 和分區大小(例如10
) 我想找到的分區給定的數字是起始號碼中的號碼。
實施例: 搜索56.
1-10
11-20
21-30
31-40
41-50
51-60 <-- 56 is in the partition starting with 51
..
231-240
241-245
確定,所以如果我在看該權利其(56/10)= 5.6,但作爲int它是5。然後(5 * 10)+ 1 = 51.看起來很好,很容易,而我卻讓自己感到困惑。謝謝 – Pricey
@Pricey當你分割整數的結果總是一個整數所以是 – cheesemacfly
我剛剛發現,這不適用於分區中的最後一個數字,即20/10 * 10 + 1 = 21所以得到小心那個。 – Pricey