2015-07-21 112 views
-3

我需要從3位數字計算範圍爲000000-999999的任意數字的算法。從3位數字計算範圍內的任意數字的算法000000-999999

必須能夠從000000-999999到3位數字的範圍內的計算數字相反。

對於指定範圍內的所有組合,算法必須是通用的。

任何想法?

(應該式,其中當將來自3位數字號碼,然後輸出將對應的6位數字來填充單數)

+0

你能提供一個特定號碼的例子嗎?這會讓你的問題更清楚。此外,你說9位數字,但999999只有6位 – samgak

+2

不清楚。提供樣本輸入和期望的結果。 –

+7

這是不可能的。只有1000個3位數字,因此無法生成999000個目標數字。 –

回答

1

可以做的方向6位數字至3位數通過將多個6位數值合併爲一個3位數範圍。這樣做的一個簡單的方法是取原號碼的模1000,導致一些從0到999

int threeDigit = sixDigit % 1000; 

轉化三位數放回原六位數字在理論上是不可能的,不管是什麼算法,用於將6位數字映射到3位數字,因爲原始轉換過程中丟失了信息。