a500: pF 進制轉換
標籤 :
通過比率 : 13人/13人 ( 100% ) [非即時]
評分方式:
Tolerant

最近更新 : 2021-01-05 21:49

內容

當一個數用x進位({\displaystyle x>0,x\in \mathbb {R} })表達時,每個位數需要x種符號表達,若要表達一個n位數字要儲存的元素{\displaystyle N(x)} :

{\displaystyle N(x)=nx}

x進制系統中表示的n位數的資訊量I{\displaystyle I>x})則有:

{\displaystyle I=x^{n}\Leftrightarrow n=\log _{x}I={\frac {\ln I}{\ln x}}}

因此,在x進制系統中以n位數能表示I的信息量所需的存儲元質數{\displaystyle N(x)}為:

{\displaystyle N(x)=nx=\ln I\cdot {\frac {x}{\ln x}}}

{\displaystyle {\begin{cases}N^{\prime }(x)<0&0<x<1\\N^{\prime }(x)>0&x>1\end{cases}}}

之下,求出哪個x能使{\displaystyle N(x)}最小即可, 即找到能使{\displaystyle N(x)}微分為0的x

{\displaystyle {\begin{aligned}N^{\prime }(x)&=\ln I\cdot \left({\frac {x}{\ln x}}\right)^{\prime }\\&=\ln I\cdot {\frac {\ln x-1}{\left(\ln x\right)^{2}}}\\\end{aligned}}}
{\displaystyle \ln x=1}{\displaystyle N^{\prime }(x)}有根{\displaystyle N^{\prime }(x)=0}
解得{\displaystyle x=e}

因此解得以e為底的進位制理論上能有最高的表達效率。

 

 

 

現在簡化一下,因為e進制有一點難實踐,我們只要做出進制轉換就行了,進制轉換的規則如下

此處以10進位與8進位轉換為例 

395(10) = 613(8)
395 / 8 = 49 餘數 3 ↑ => 613(8)
 49 / 8 =  6 餘數 1 |
  6 / 8 =  0 餘數 6 |

另外亦可由8進位轉10進位

26(8) = 22(10)

26(8)=(2 * 81) + (6 * 80) = 22(10)

 

輸入說明

單筆輸出入

輸入有三個數 $n, a, b$

其中n為a進制下的數

b為欲轉換的目標進制

保證 $2 < a, b \le 10$

$n > 0$

且 $n_{(a)}$在10進制下在int範圍內 

輸出說明

輸出一個數代表$n_{(a)}$在$n_{(b)}$下的表示

範例輸入
第一筆範例輸入:
395 10 8
第二筆範例輸入:
26 8 10
範例輸出
第一筆範例輸出:
613
第二筆範例輸出:
22
測資資訊:
記憶體限制: 64 MB
公開 測資點#0 (10%): 1.0s , <1K
公開 測資點#1 (10%): 1.0s , <1K
公開 測資點#2 (10%): 1.0s , <1K
公開 測資點#3 (10%): 1.0s , <1K
公開 測資點#4 (10%): 1.0s , <1K
公開 測資點#5 (10%): 1.0s , <1K
公開 測資點#6 (10%): 1.0s , <1K
公開 測資點#7 (10%): 1.0s , <1K
公開 測資點#8 (10%): 1.0s , <1K
公開 測資點#9 (10%): 1.0s , <1K
提示 :

對$10 \%$ 數據$a = b$

對$20 \%$ 數據$a = 10$

對$20 \%$ 數據$b = 10$

其餘無特殊限制

標籤:
出處:
109學年度初階班上學期期末考 [管理者:
fdhs109_31813 (9th 初階教學)
]


編號 身分 題目 主題 人氣 發表日期
沒有發現任何「解題報告」