原创 【題解】洛谷P2234[HNOI2002]營業額統計 spla

題目鏈接 強烈推薦大佬的splay樹講解,原理講的很清楚。代碼我也是學(抄)的大佬的。(之前調試半天過不了樣例,突然發現代碼這裏求的前驅後繼是嚴格的前驅後繼,加個等號就可以了) #include<cstdio> #includ

原创 【比賽報告】2018.10.15校賽[2015-9-13 NOIP模擬賽 by hzwer] NOIP練習卷十四

比賽時間:2018.10.15 選手:lrllrl 用時:2h 得分:100+10+90=200 最初想法是一個揹包問題。首先揹包問題的模型肯定是不行的,但是我們可以列出狀態轉移方程後發現,每個狀態決策會對它之後的決策產生後效性

原创 【比賽報告】2018.10.16校賽[2015-10-04 NOIP模擬賽 by hzwer] NOIP練習卷十五

比賽時間:2018.10.16 選手:lrllrl 得分:70+0+10=80 用時:2小時 (讓我想起了NOIPDAY1T1) 設 dp[i]dp[i]dp[i] 表示走到 iii 位置採到的最大數量,然後直接轉移就好了。唯一

原创 【題解】洛谷P1736創意吃魚法 線性DP

題目鏈接 設 dp[i][j][0/1]dp[i][j][0/1]dp[i][j][0/1] 表示以 (i,j)(i,j)(i,j) 爲左/右下角所能得到的最大符合條件正方形。設lft[i][j],rht[i][j],up[i

原创 【比賽報告】2018.10.17校賽[2014-10-6noip模擬賽] NOIP練習賽卷十六

比賽時間:2018.10.17 選手:lrllrl 得分:100+50+0 用時:2小時 大模擬一下就行了。 #include<cstdio> const int N=510; struct exe{ char name[2

原创 【題解】洛谷P1855榨取kkksc03 多維01揹包

題目鏈接 懶得打公式了。 #include<cstdio> #include<algorithm> using namespace std; int n,M,T,m[110],t[110],dp[201][201]; int

原创 【題解】洛谷P1092[NOIP2004]蟲食算 dfs

題目鏈接 參考了大佬題解中的剪枝操作 #include<cstdio> #include<map> #include<cstdlib> using namespace std; int n,vis[27]; char s[4]

原创 【題解】洛谷P1026[NOIP2001]統計單詞個數 區間DP+字符串

題目鏈接 參考了大佬題解中string的基操 #include<cstdio> #include<iostream> using namespace std; string str,ch,word[10]; int p,k,s,

原创 【題解】洛谷P1156垃圾陷阱 揹包問題

題目鏈接 學習了大佬題解 #include<cstdio> #include<algorithm> #include<cstring> using namespace std; int d,g,dp[2][2510],maxn

原创 【題解】洛谷P1063[NOIP2006]能量項鍊 區間DP

題目鏈接 區間DP。懶得打公式了。 #include<cstdio> #include<algorithm> using namespace std; int n,a[220],dp[220][220]; int main()

原创 【題解】hdu5693 D Game 區間DP

題目鏈接 區間DP好題,把區間DP的基本操作都用上了。(狀態轉移方程很多,見代碼吧) #include<cstdio> #include<algorithm> #include<cstring> #include<map> us

原创 【題解】洛谷P1417烹調方案 01揹包+貪心

題目鏈接 最初以爲這就是一個01揹包問題。設 dp[i,j]dp[i,j]dp[i,j] 表示前 iii 項食材用時爲 jjj 時的最大美味指數。 dp[i,j]=max⁡c[i]≤j≤t{dp[i−1][j−c[i]]+a[

原创 【題解】洛谷P1140相似基因 線性DP

題目鏈接 設 dp[i][j]dp[i][j]dp[i][j] 表示 s1s1s1 到 iii 位置,s2s2s2 到 jjj 位置時的最大匹配值。設 dat1[i]dat1[i]dat1[i] 表示 s1[i]s1[i]s1[

原创 【題解】洛谷P1508 Likecloud-吃、吃、吃 線性DP

題目鏈接 設 dp[i,j]dp[i,j]dp[i,j] 表示走到第 iii 行第 jjj 列所能得到的最大能量值。 dp[i,j]=max⁡1≤i≤m,1≤j≤n{dp[i+1][j−1],dp[i+1][j],dp[i+1

原创 【題解】洛谷P1387最大正方形 線性DP

題目鏈接 設 dp[i][j]dp[i][j]dp[i][j] 爲以 (i,j)(i,j)(i,j) 爲右下角的最大正方形的邊長。 dp[i][j]=min⁡1≤i≤n,1≤j≤m{dp[i−1][j],dp[i−1][j−1],