搜尋此網誌

2013-09-15

通用紙張的國際標準 - ISO 216

Wiki

除了美國跟加拿大搞自己的,一般都這標準;書籍大多都是 B5 左右的大小,所以要把書印出來的話,設定 B5 應該差不多。至於在電子閱讀器上就沒這問題了,因為 PDF 是向量的,可以自由放大縮小而不會糊掉,不過一些圖片還是會糊掉就是。

文泉驛微米黑在 LaTeX 的微調 - 將兩個長破折號相連

預設的情形下,兩個長破折號中間會有空白,看起來不大美觀,因此調整方式為將兩者往中間靠攏,如此在視覺上就不會看見空白,至於兩邊多出來的部份,肉眼應該很難分辨才對。

基本設定加上這幾行。
\makeatletter
\newcommand*{\shifttext}[2]{%
  \settowidth{\@tempdima}{#2}%
  \makebox[\@tempdima]{\hspace*{#1}#2}%
}
將左右長破折號調整位置。
\shifttext{1pt}{---}\shifttext{-1pt}{---}
這方法很取巧,但是很實際。

在 LaTeX 使用假的斜體字跟粗體字 - 以文泉驛微米黑為例

文泉驛微米黑雖是在電子閱讀器上比較舒適的字體,但是沒有斜體字跟粗體字,所以在製作 tex 檔時,需要手動設定一下。

如果是整個主要字型都是文泉驛微米黑。
\setmainfont[AutoFakeSlant=0.4, AutoFakeBold=3.5]{WenQuanYi Micro Hei}
收工。

摘玫瑰問題

看到一個有趣的問題,內容如下︰
柏拉圖有一天問老師蘇格底什麼是愛情? 蘇格拉底叫他到花園中走一趟,並在途摘朵最美麗的玫瑰回來只准摘一次,且不能回頭走。但這座花園的道路是直線也就說每朵旦錯過了就沒有機會再看到。蘇格拉底覺得柏圖應該因為害怕下一朵花可能更加漂亮而遲不敢摘取,最後兩手空歸。他便可以趁機對柏拉圖講述愛情的哲學理念。但聰明的柏拉圖自有他打算,其實偷知道這座花園總共只八朵是玫瑰花而已,所以他用了一個策略來提高拿到最美麗玫的機率︰"首先將沿路上最看到的三朵玫瑰花都當成參考樣品,無論如何不要摘他們。之後走下去再看到的玫瑰,只要是比這最前面三朵漂亮不繼續猶豫了。" 假如依照柏拉圖的策略,你覺得他"拿到最美麗的玫瑰花"的機率是多少呢
python 裡有內建排列組合的 library,所以可以直接拿來用,算出所有符合的個數,程式碼如下︰
import itertools

def counting(roses, samples):
    roses_tuples = tuple(itertools.permutations(range(1, roses + 1), roses))
    population = len(roses_tuples)
    count = 0
    for i in roses_tuples:
        maximum = max(i[:samples])
        for j in i[samples:]:
            if j > maximum:
                if j == roses:
                    count = count + 1
                break
    return (count, population)
以八朵玫瑰取前三朵的話︰
>>> counting(8,3)
(16524, 40320)
雖然是用很笨的方式來得到答案,不過很方便,如果不需要找到一般解的話。