作者mabus (CodeINCEPTION)
看板Prob_Solve
標題Re: [問題] 一個數字用兩個字表示的方法
時間Sat Jan 22 19:32:58 2011
有不用這種用數學進制轉換的方式嗎?
原本有想過一些方法,
把數字丟到矩陣裡,想說接下能用什麼方法簡化(應該也可以說是壓縮吧?),
可是學藝不精,暫時還聯想不到...。
還有用代換的方式,例如12345....,換成12=a,34=b...這一類的方法,
可是代換一層之後就不能再繼續了,會無法還原...。
還有用加減乘除,例如123,分解成100+20+3,或是200-86,還其他的,
可是我還是找不出關係。
或是配合以上未完成的方法,搭配現實環境常態常數做組合,
例如年月日之類的,可是想到一半就想不下去了...。
若是限定5位數到6位數,濃縮成2位數,這有可能嗎?
本身不是學電腦工程的,所以對這方面知識很有限,
在解決這個問題的過程裡,我看到一個叫做熵的概念,
好像是資料混亂的程度的指標。
也就是說,若是限定數字的範圍縮小,混亂的程度可以降低吧?
如此可能性能提升吧?
以上想法,若是有問題,就請各位大大當笑話看吧...。
還是請各位大大指點一下,該怎麼想比較好。
先謝謝各位的答覆了!
※ 引述《rosepong (香)》之銘言:
: ※ 引述《mabus (CodeINCEPTION)》之銘言:
: : 如題
: : 有一個任意數字(阿拉伯數字),要用兩位數來表示,
: : 這兩位數可用英文大小寫及數字表示,
: : 有麼思路可以提供嗎?想好久都想不出來。
: : 例:
: : 21365436546464=Cx
: : 87464165498=X5
: : 10000024=5a
: : 10=0a
: : 以上是示意的表示,也就是隨便設的,
: : 類似這樣,但是實際上我還找不出規律..。
: : 有相關的文獻,或是思路可以提供嗎?
: : 還是這是不可能的?
: : 若是任意數不行,那五位數或是六位數可以嗎?
: : 煩請各位指教了,感謝!
: 那你把它想成是36進制0123456789abcdefghijklmnopqrstuvwxyz
: 任意數大概做不到
: 兩位數只能處理26^2
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.224.71.229
→ mabus:有限的數據似乎無法處理無限的數據,範圍縮小應該可行吧? 01/22 19:39
推 ledia:不可行 01/22 20:11
推 ledia:1-1 and onto, 兩邊集合的數量要一樣多 01/22 20:14
→ ledia:壓縮指的是把常用的 code 換成較短的 code 來表示 01/22 20:15
→ ledia:但仍然需符合一對一的關係才能完備 01/22 20:16
→ ledia:否則你把 2 用來稱呼 50, 那麼真的有 2 出現的話怎麼辦 ? 01/22 20:17
推 awashharp:這想法感覺已經扯到壓縮的概念了 試想把無限大小壓成2KB 01/26 01:29
→ awashharp:可能會有這樣的理想狀態嗎? 01/26 01:30
→ TeaEEE:這個想法有點像是先用Huffman編碼來壓縮 01/26 11:36