原创 PAT 甲級 1026 Table Tennis(邏輯複雜+坑多+代碼量大容易出錯)

解題總結 1.邏輯提前理清楚,條件都用文檔寫出來 2.代碼量大的時候善用代碼塊隱藏和功能註釋 3.若限制條件交叉,則選擇以某一個爲基礎,展開不同情況往下討論 寫題路程 卡住的點: 1.不能用我自己原來的寫法(優先隊列模擬最先空餘的

原创 9.26 兩場談話

1.9.26晚第一場談話 找保研浙大的學長聊了一下,推免是按照前三年平均績點來取名額的,哎呀…qwq,學長一開始是鼓勵多把時間用來做提高能力的事情…(數據結構+算法題之類),我上個學期實在頹廢,既沒有認真系統學習算法,也沒有認真提

原创 PAT甲級 1043 Is It a Binary Search Tree (二叉查找樹)

#include <iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<vector> #include<string> #inclu

原创 PAT甲級 1044 Shopping in Mars 二分法

使用upper_bound簡化代碼(從[start,end-1]內找出第一個大於該值的地址) 方法1 完全參照https://www.cnblogs.com/ligen/p/4351417.html的思路及代碼 思路: 1.二分遍

原创 PAT甲級 1102 Invert a Binary Tree(二叉樹遍歷+給節點的左右兒子建樹)

嘻嘻嘻今天把算法筆記上二叉樹部分的題目寫完啦開心嗷!下次開始繼續寫樹的遍歷啦啦~qwq 思路 按照給出的0~N-1號節點的左右兒子建樹,沒有出現過的那個數就是根結點。 1.左右子樹翻轉的數的層序遍歷就是原來未翻轉的層序遍歷的倒置。

原创 PAT甲級 1034 Gang(存在疑問)

以及codeblocks需要在setting裏設置支持c++11新標準才能用auto類型! 先附上柳婼大神的代碼: 來源:https://blog.csdn.net/liuchuo/article/details/52291920

原创 PAT甲級 1085 Perfect Sequence 二分法

解題思路: 二分,O(nlogn)的複雜度纔可以跑10^5的數據。直接找到第一個不滿足條件的下標j,然後j-1即使最後一個滿足條件的下標(即所求下標)。二分函數要麼直接調用函數Upper_bound,要麼自己寫。 注意 1.數據1

原创 PAT甲級 1092 To Buy or Not to Buy 散列

方法1:map容器代替hash散列 代碼 #include <iostream> #include<cstdio> #include<map> #include<queue> #include<string> #include<a

原创 PAT甲級 1048 Find Coins(二分/map 來查找是否有硬幣之和恰好爲m)

1.map容器 #include <iostream> #include<cstdio> #include<map> #include<algorithm> using namespace std; typedef long l

原创 PAT甲級 1103 Integer Factorization (DFS)

嗚嗚,寫題的時候好睏吶…。結果不是很難的題目硬是搞了這麼久!qwq哎。睡醒後看了1小時p站DJ…流淚。國慶放假啥都沒幹,唯一堅持的事情就是瘋狂熬夜。天天睡得超級晚…劉海那一塊兒要禿啦…(哭) 注意 1.int型冪函數自己寫一個,不

原创 PAT甲級 1040 Longest Symmetric String (DP/Hash)

解題歷程 原本想用kmp/哈希映射來寫,但是隻是大致學習了思想,並沒有用這兩種方法去寫過題目,遂看大家題解(…不可取),發現大家都是用動態規劃dp來做的.我驚。 我真的好不會寫dp,我枯了。今天晚上把dp對應書上內容看一遍。 三種

原创 PAT 甲級1050 String Subtraction 散列(字符串簡單處理)

題意 給出兩個字符串S1,S2,輸出字符串S = S1-S2. 注意 1.S1,S2中可能包含空格,因此都要用gets(str)或者getline(cin,str). 2.若先使用scanf再使用geline,需要在getline

原创 PAT 1067 Sort with Swap(0, i)(貪心)

一開始看錯題目,沒看懂題目限制了每次交換必須用0與另一個數交換,求最小交換次數。一開始還以爲是那種BIT線段數求逆序數組(冒泡排序次 數)那種題。 思路 代碼 #include <iostream> #include<cstdio

原创 PAT甲級 1038 Recover the Smallest Number(字符串處理)

完全按照柳婼大神思路寫的。 附鏈接:https://blog.csdn.net/liuchuo/article/details/52264827?locationNum=10&fps=1 思路 sort排序的bool函數cmp直接

原创 PAT甲級 1020 Tree Traversals(二叉樹的遍歷與建樹)

#include <iostream> #include<cstdio> #include<map> #include<queue> #include<string> #include<algorithm> #include<ve