a630. 10. New Math
Tags :
Accepted rate : 56人/59人 ( 95% ) [非即時]
評分方式:
Tolerant

最近更新 : 2013-02-21 19:49

Content

數字系統是用來解讀數學表示式的符號。數字系統的「底」則是要求某一位數字所代表的值時所要乘的數字的某個次方。比如說,以 10 為底,數字 1234 就代表 (1×103)+(2×102)+(3×101)+(4×100) 這個值。同一個數字若以 19 為代表 (1×193)+(2×192)+(3×191)+(4×190)。如果我們用 a, b, c... 表示比較大的位數 (即 10, 11, 12...),那麼 aib 這個數字以 19 為低就代表 (10x192)+(18x191)+(11x190)。

你的工作就是要解讀不同數字系數字,對這些數字作數學運算,並將結果以另一個數字系統輸出。輸入的每一個數字都有值和底,以 (^) 符號隔開。所以以 17 為底的 abc 這個數字便表示為 abc^17。可用的運算包括加法,減法,及乘法 (沒有除法)。你必須以正確的順序來執行這些運算,也就是說,所有的乘法都要加法和減法之前執行。算式中不會有括號。加法、減法、和乘法分別用 +, -, 和 * 來表示。這些運算符號和數字間不會再有空格,你的程式必須能正確地讀取它們。輸入中除了算式結尾的換行外不會有其它的白空白。

每筆測資的最後會有一個等號 (=) 和 (^),然後是輸出答案用的底。

所有的底都不會小於 2;也不會有底大於 20。所有大於 10 的底都會用小寫字母 a, b, c... 來代表大於 9 的位數。 

Input
Output
Sample Input #1
1b^13+j3a67^20-hhh^19+123^6*123^7=^15
1db7^14+egg^18-hi32^20+3876^9-321^4=^7
1db7^14+egg^18+hi32^20*3876^9*30^19-110a62^18+321^4=^20
Sample Output #1
408260^15
-1051236^7
ia9j5bjc^20
測資資訊:
記憶體限制: 512 MB
公開 測資點#0 (100%): 1.0s , <1K
Hint :
所有輸入的數字都 < 231,答案則 < 263
Tags:
出處:
HP CodeWars2007 [管理者: snail (蝸牛) ]

Status Forum 排行

ID User Problem Subject Hit Post Date
沒有發現任何「解題報告」