原创 28行代碼AC——習題3-12 浮點數(UVA 11809 - Floating-Point Numbers)——解題報告

勵志用少的代碼做高效的表達 題目(提交)鏈接→UVA-11809 算是個數學題吧,雖然在AOAPC上面給放到象徵水題的第三章裏面了。 這個題基本就是幫着你複習了一遍浮點數的存儲方式了。浮點數在計算機裏是分三部分表示的,最前面一

原创 25行代碼AC——習題5-7 打印隊列(Printer Queue,UVa 12100)——解題報告

勵志用盡量少的代碼做高效的表達。 題目(提交)鏈接→UVa-12100 題目描述: 我們需要用打印機打印任務。每個任務都有1~9間的優先級,優先級越高,任務越急。 打印機的運作方式:從打印隊列裏取出一個任務j,如果隊列裏有比j

原创 43行代碼AC——例題6-8 樹(Tree,UVa 548)——解題報告

勵志用盡量少的代碼做高效的表達。 題目大意 給定二叉樹的中序和後序遍歷序列,求該二叉樹中根到葉子的路徑和最小者,若存在多個解,則選擇葉子權值最小者(葉子權值不重複)。 思路分析 此題本質是中後序建樹+求路徑最小權。 (PS:書上

原创 15行代碼AC——習題5-5 複合詞(Compound Words, UVa 10391)——解題報告

勵志用少的代碼做高效的表達 題目(提交)鏈接→UVA-10391 本題實質是#include<string>頭文件的substr()字符串分割函數與#include<algorithm>頭文件的find()函數聯用。 基本思路

原创 12行代碼AC——試題 算法訓練 猴子喫包子——解題報告

勵志用盡量少的代碼做高效的表達。 注意點: 挨個算喫包子的時間勢必會因爲省略小數的問題導致結果不準確。 因此,對於本題:我的核心思路是:分數代替小數,使用除法+取餘的方式化簡分數,進而解題。 代碼: #include<bits/

原创 22行代碼AC——習題5-6 對稱軸(Symmetry,UVa1595)——解題報告

勵志用盡量少的代碼做高效的表達。 題目(提交)鏈接→UVa-1595 思路: 此題本質是一道笛卡爾座標系上的對稱性問題。 判定性問題:由於只要能判別圖像是否左右對稱即可,無需確認關於哪條垂直線對稱,那麼問題可以這樣解決:將座標

原创 22行代碼AC——例題7-1除法(Division UVa 725)——解題報告

勵志用盡量少的代碼做高效的表達 題目(提交)鏈接→UVa-725 題目大意: 0-9不重複的組成兩個5位數,如果數A/數B=n,則爲可行解。 思路分析: 本題實質是通過巧妙分析的暴力求解法。 下等解法:直接枚舉0-9的全排列,

原创 懶癌的福音——algorithm頭文件函數全集——史上最貼心

  不知大家可否有這樣的習慣:一道題想出思路後,一般都去百度一下有沒有“現成的函數”可以調用,往往收穫不菲,增長很多奇奇怪怪的知識。事實上,這些“現成的函數”大部分都來自於algorithm頭文件。我等懶癌的福音啊!   當然,也

原创 17行代碼AC——例題5-3 卡片遊戲(Throwing cards away I, UVa 10935)——解題報告

勵志用少的代碼做高效的表達 題目(提交)鏈接→UVa-10935 本題爲水題,因此側重點由解題轉向優化。 思路: 最開始想到用string存儲,利用插入,刪除快速計算。 但卻發現如果輸入>=10的數,給string賦值就非常

原创 14行代碼AC——習題5-4 交換學生(Foreign Exchange, UVa 10763)——解題報告

勵志用少的代碼做高效的表達 題目(提交)鏈接→UVa-10763 本題爲水題,因此側重點由解題轉向優化。 題意:判斷第一列的數字是否與第二列的數字相同(亂序)。解題方向多樣,值得探究: 1、map哈希表解法:定義map<int

原创 20行代碼AC——習題3-4 週期串(UVa-455)_解題報告

勵志用盡量少的代碼做高效表達 題目(提交)鏈接——>UVa-455 題意: 輸入一個長度不超過80的字符串,輸出其最小週期。 思路: 本題的最佳思路是取餘構造循環串求最小週期 按照正常求週期的方法,若取不同週期長度,遍歷次數也