題目描述:給定乙個長度為 n 的陣列。要求相臨的數大小不相同,假如相臨數的相同,你可以通過將 a[i]+1 來改變它的大小,但是需要付出 b[i]的代價,同時對於每個 a[i]只能加一次。問你付出的最小代價。思路 : 每個位置有兩個狀態 (+1 或 不+1) , 所以直接dp轉移狀態就好了;對於100%的資料,1<=n<=2e5,0<=a[i]、b[i]<=1e9
集合表示 :dp[ i ][ j ] 表示前 i 個數里使相鄰的數不相等時所花費的最小代價; 當 j = 0 時表示第 i 位不+1, j = 1 時表示第 i 位+1 ;
集合劃分 :根據相鄰兩個數是否相等 , 以及+1後與相鄰的數的關係分為四種情況進行狀態轉移 ;
code1 :
#include
using
namespace std;
const
int n =
2e5+7;
int a[n]
,b[n]
;long
long dp[n][2
];intmain()
else
if(a[i-1]
+1==a[i]
)else
if(a[i-1]
==a[i]+1
)else
} cout<<
min(dp[n][1
],dp[n][0
])/取第n位加和不加的最小值
return0;
}
code2 :
#include
using
namespace std;
const
int n =
2e5+7;
int a[n]
,b[n]
;long
long dp[n][2
];intmain()
cout<<
min(dp[n][1
],dp[n][0
])
}
資料不平衡問題
資料不平衡問題實際上指的就是y的分布相差很大的問題,又稱為類別不平衡問題。出現這種問題的原因是在實際取樣中,有可能會出現一類的y數量遠遠大於另一類的例子。乙個很明顯的例子就是在做信用卡還款 的時候,一定是按時還款的人佔據絕大多數,不按時還款的人佔一小部分,那如果機器無腦 新客戶一定會還款,正確率是很...
類別不平衡問題
詳解類別不平衡問題 盧總 類別不平衡問題的方法彙總 為少數類生成新樣本 smote borderline smote adasyn 整合方法 演算法層面 focal loss 損失函式的權重調整 閾值移動 評價指標 非均衡資料處理 如何學習?隨機降取樣 bagging是萬金油。屬於bagging 假...
不平衡類問題總結
不平衡類的問題很常見,解決該類問題的方法一般有兩種,一種是在目標函式中增加懲罰項,使得錯分某一種類 或多類 的成本增大。另一種是重取樣,使得兩類或多類的分布較為均衡。乙個分類器的效能好壞,取決於取決於用什麼樣的度量標準。混淆矩陣是一種常用的度量方法,混淆矩陣的示意圖如下 其中,tn表示為 true ...