110 年 國立中山大學資訊工程學系碩士班甲組《離散數學》
第 1 題20 分
Consider the following program segment (written in pseudocode):
(a) [10%] How many times is the print statement of the third line executed?
(b) [10%] Replace in the second line by and answer the question in part (a).
登入後即可作答並保存紀錄。
核心觀念
內層迴圈每執行一次,就會執行一次 print。因此,只要逐一計算每個外層迴圈的內層執行次數,再加總即可;印出的乘積 不影響執行次數。
解題方法
(a) 當外層變數 固定時, 從 跑到 ,內層共執行 次。總執行次數為
(b) 將第二行改為 到 後,固定 時,內層共執行 次。總執行次數為
第 2 題10 分
If and is composite, then there is a prime such that .
登入後即可作答並保存紀錄。
核心觀念
正整數 是合數,表示 ,且存在整數 滿足
本題要證明:每個合數都有一個質數因數。關鍵是利用正整數的良序性,從 的所有大於 的正因數中,取出最小的一個。
解題方法
令 為 的最小正因數,且 。這樣的因數確實存在,因為 本身是大於 的因數。
接著證明 是質數。若 不是質數,由於 ,它便是合數,因此存在整數 使得
第 3 題20 分
(a) [10%] Prove that if 169 integers are selected from , then the selection must include two integers , where or .
(b) [10%] Write a statement that generalizes the results of part (a).
登入後即可作答並保存紀錄。
核心觀念
本題考察鴿籠原理與整數的質因數分解。每個正整數 都能唯一寫成
其中 ,而 是奇數。這裡的 稱為 的奇數部分。
若兩個整數有相同的奇數部分,便可寫成 與 。當 時,,因此兩者必有一個整除另一個。
解題方法
將 中的每個整數,依其奇數部分分組。可能的奇數部分為
共 個,也就是 個組別。
現在從這 個整數中選出 個。由鴿籠原理,至少有兩個被選整數落在同一組,也就是有相同的奇數部分。設這兩個整數為 與 ,不妨令 ,則
所以 。因此所選整數中必有一對 ,使得 或 。
(b) 推廣結果
第 4 題10 分
Let and . How many strings in have as a proper prefix?
登入後即可作答並保存紀錄。
核心觀念
字串以 為「真前綴」(proper prefix),表示字串的前兩個字元固定為 ,且整個字串長度必須大於 。字母表 有 個字元,每個後續位置都可從這 個字元中任選。
解題方法
長度為 的字串中,前兩個字元已固定為 ,剩下 個位置各有 種選擇,因此符合條件的字串數為 。因為總長度最多為 ,且必須大於 ,所以考慮 :
第 5 題10 分
If a fair die is rolled 11 times, what is the probability that the sum of the rolls is 35?
登入後即可作答並保存紀錄。
核心觀念
每次擲出的點數都是 到 ,且 11 次擲骰彼此獨立。因此,所有有序結果等可能,總數為 。所求機率等於「點數總和為 的有序結果數」除以 。
計數時使用隔板法與容斥原理:先把每次點數減去 ,轉成非負整數變數,再以容斥原理處理每個變數至多為 的限制。
解題方法
令第 次擲骰的點數為 ,並設 。則 ,而
先暫時不限制 。由隔板法,非負整數方程式 的解數為
接著以容斥原理排除至少一個變數大於等於 的情形。若指定 個變數各扣除 ,剩下的總和為 ,因此該情形的解數為 。由於 ,只需計算至 :
第 6 題10 分
Solve the recurrence relation
登入後即可作答並保存紀錄。
核心觀念
這題考二階常係數非齊次遞迴關係。先解齊次遞迴式,得到通解中的指數項;再依右側常數項尋找特解,最後代入初始條件決定常數。
解題方法
先考慮對應的齊次遞迴式
設解為 ,代入後得到特徵方程
因式分解為
因此齊次解為
原式右側為常數 。由於特徵根 對應常數項,常數特解會與齊次解重複,因此設一次式特解
代入左側:
第 7 題10 分
Find in by Euclidean algorithm.
登入後即可作答並保存紀錄。
核心觀念
在 中, 是滿足 的剩餘類。模反元素存在的條件是 。歐幾里得算法可求最大公因數,並透過回代將最大公因數寫成 與 的整數線性組合。
解題方法
先用歐幾里得算法求最大公因數:
最後的非零餘數是 ,因此 ,反元素存在。由最後一式開始回代:
第 8 題10 分
How many integer solutions are there of the equation
if for all ?
登入後即可作答並保存紀錄。
核心觀念
這題考非負整數解的計數,可用「隔板法」(Stars and Bars)。對方程式
其中 ,非負整數解的數量為
解題方法
把 個相同的單位視為星號,並用 個隔板分成 組;每組星號的數量分別代表 。某組沒有星號時,表示該變數等於 ,因此隔板可以相鄰,也可以出現在星號兩端。