隨機刷題記錄(就很迷)

2020-10-02 17:00:10

除了平時划水練習,之前也自己刷了些題,感覺自己找題再補更適合我吧。就像弄個刷題記錄。


9/30

HDU 2859 Phalanx
給定一個整數n,然後給出一個n*n的方陣,求方陣中最大的對稱子方陣(對稱指的是以右上角至左下角為對角線)

常規操作:dp,O(n^3)(其中空間複雜度可優化,講解
1、規律:矩陣上搞dp,空間優化看情況
2、dp找規律例題+1

非常人的思路:雜湊預處理,二分---->程式碼連結(雜湊的騷操作,可以看看)


十一放假,各大oj平臺都網址維護,交不了題。

10/1

HYSBZ 1026 windy數
windy定義了一種windy數。不含前導零且相鄰兩個數位之差至少為2的正整數被稱為windy數。 windy想知道,在A和B之間,包括A和B,總共有多少個windy數?
==》求a到b閉區間內滿足相鄰兩個數位之差大於等於2的數位個數

POJ - 3252 Round Numbers
規定一個數如果二進位制中0的個數大於等於1的個數,則這個數稱為「整數」,問閉區間a,b中有多少個整數

經典的數位dp,入門題:HDU 2089 不要62
回顧了一下數位dp的入門部落格:數位dp入門

第一題關鍵變數:dp[i][j]表示第i位上數位為j的結果,pos表示位數,pre表示上一位數,lead表示是否有前導0,limit表示數位上界變數

ll dfs(int pos,int pre,bool lead,bool limit)

還是習慣dfs寫法,思路是順序的,dp寫法容易漏情況。
第二題不多講解,整理了一篇部落格:連結