清華大學高性能計算研究所碩士生招生復試
查看(1038) 回復(0) |
|
|
發表于
樓主
注意事項:
1. 試題共三題,總計100分,考試時間為2小時整。 2. 不得使用自帶的電子設備,包括筆記本、U盤、手機等;不得使用參考書籍和資料。 3. 編程環境為Windows 2000 Professional + Visual Studio 6.0,只能使用C/C++語言。 4. 每一題的輸入數據都從文件Input.txt中讀取,將結果輸出至文件Output.txt,請嚴格按照每一題的輸入輸出格式。在考試過程中,我們恕不提供除試題中樣例以外的測試數據,請自行生成輸入數據以對程序進行自測。 5. 請在考試結束之前自行設置編譯環境和配置編譯參數,將所寫的程序編譯成可執行文件,文件名在每一題中都有規定。生成的可執行文件將作為最終測試的唯一依據,若無法運行您的可執行文件,最終成績將記為零分。 6. 程序對每個測試數據的可用運行時間上限為每一題中規定的“運行時限”,若超時或結果錯誤,則該測試用例不得分。 7. 在考試過程中,若計算機出現故障,請及時通知工作人員,以免耽誤您的考試時間。 8. 上機考試結束后,請勿馬上離開,工作人員將會直接進行現場測試,需要您的合作。 試題一(5個測試數據,每個5分,共25分) 求N的階乘 變量條件:N為正整數,且N≤1000。 運行時限:1秒/測試數據。 輸入格式:僅一個數,N。 輸出格式:僅一個數,N!的結果。 可執行文件:program1.exe 樣例一: Input.txt 4 Output.txt 24 樣例二: Input.txt 15 Output.txt 1307674368000 試題二(7個測試數據,每個5分,共35分) 給出一個整數序列S,其中有N個數,定義其中一個非空連續子序列T中所有數的和為T的“序列和”。對于S的所有非空連續子序列T,求最大的序列和。 變量條件:N為正整數,N≤1000000,結果序列和在范圍(-2e63,2e63-1)以內。 運行時限:2秒/測試數據 輸入格式:第一行為一個正整數N,第二行為N個整數,表示序列中的數。 輸出格式:僅一個整數,表示最大序列和。 可執行文件:program2.exe 樣例一: Input.txt 5 1 5 -3 2 4 Output.txt 9 解釋:子序列“1,5,-3,2,4”具有最大的序列和,9=1+5+(-3)+2+4 樣例二: Input.txt 6 1 -2 3 4 -10 6 Output.txt 7 解釋:子序列“3,4”具有最大的序列和,7=3+4 樣例三: Input.txt 4 -3 -1 -2 -5 Output.txt -1 解釋:子序列“-1”具有最大的序列和,-1=-1 試題三(8個測試數據,每個5分,共40分) 二叉樹的前序、中序、后序遍歷的定義: 前序遍歷:對任一子樹,先訪問跟,然后遍歷其左子樹,最后遍歷其右子樹; 中序遍歷:對任一子樹,先遍歷其左子樹,然后訪問根,最后遍歷其右子樹; 后序遍歷:對任一子樹,先遍歷其左子樹,然后遍歷其右子樹,最后訪問根。 給定一棵二叉樹的前序遍歷和中序遍歷,求其后序遍歷(提示:給定前序遍歷與中序遍歷能夠唯一確定后序遍歷)。 變量條件:二叉樹中的結點名稱以大寫字母表示:A,B,C....最多26個結點。 運行時限:1秒/測試數據。 輸入格式:兩行,第一行為前序遍歷,第二行為中序遍歷。 輸出格式:若不能根據前序和中序遍歷求出后序遍歷,輸出NO ANSWER;否則輸出一行,為后序遍歷。 可執行文件:program3.exe 樣例一: Input.txt ABC BAC Output.txt BCA 樣例二: Input.txt FDXEAG XDEFAG Output.txt XEDGAF 樣例三: Input.txt ABCD BDAC Output.txt NO ANSWER 測試用例說明 試題一 1. N=12,使用32位整數可以出結果,驗證基本正確性 2. N=20,直接使用64位數可以出結果 3. N=100,驗證較大的數 4. N=666,驗證較大的數 5. N=1000,最大范圍 試題二 1. N=100,全正整數 2. N=100,全負整數 3. N=20000,直接使用二重循環,如果效率高可以出解 4. N=50000 5. N=100000 6. N=500000,序列和超過2^32,必須使用64位整數類型 7. N=1000000 試題三 1. 完全二叉樹 2. 全左子樹直線型 3. 全右子樹直線型 4. 根結點在中間的直線型 5. 無解 6. 隨機26字母 7. 隨機26字母 8. 隨機26字母 |
回復話題 |
||
|
|