這幾天抓住國慶的**時間(因為沒有女朋友,天天刷題emmmm 其實還在肝少前還要撈秋刀魚) ,重點攻克掉幾個基本的地方:搜尋、dp、圖論。這幾天的題目應該就是這些範圍。
原題的意思大概是這樣的,有個天平,上面一堆掛鉤,然後一堆砝碼,砝碼掛在掛鉤上面,問平衡的情況有幾種。
顯然不能窮舉,因為o(
2020
) 的複雜度太高了。我們不妨換個思路想:在我們放上乙個砝碼的時候,究竟發生了什麼?
我們可以放在任何乙個掛鉤上,有
c 個決策。他們產生了什麼影響?我們採取第ci
個掛鉤放置第
i 個物品時,令我們從k−
1個物品產生力臂和為
x 的狀態轉移到了
k個物品產生力臂和為x+
ci×w
i 的狀態上去。由此,我們得到了這樣的乙個狀態轉移方程:(上下符號不統一) dp
[i][
j+c[
i]×g
[k]]
=∑dp
[i−1
][j]
說的應該還是有些囉嗦,以後再改吧,唉。。。
這份**基本上和網上另外乙個dalao是一樣的,因為跟著ta的思路走的。太菜了啊,唉。。。。
#include
#include
#include
#include
#include
#include
#include
using
namespace
std;
typedef
unsigned
long
long ull;
int rep[24],val[24];
int dp[25][15005];
int main()
演算法 動態規劃poj1837
複習了動態規劃 0 1揹包問題,核心方程就是 if c i j f i j f i 1 j 如果揹包的容量,放不下c i 則不選c i else f i j max f i 1 j f i 1 j c i v i 這裡註明一點,i指代物品數量,j指代揹包容積,那麼有兩種情況,乙個是不要第i件物品,那...
POJ 1837 天平問題
主要參考 題目 題意 有乙個天平,左臂右臂各長15,然後給出n,m,n代表有幾個掛鉤,掛鉤給出負數代表在左臂的距離,正數則在右臂 m代表有m個砝碼,要你求出使得這個天平保持平衡有幾種方法,要求所有砝碼全部使用完 思路 首先我們先要明確dp陣列的作用,dp i j 中,i為放置的砝碼數量,j為平衡狀態...
POJ 1837 簡單 DP 二逼 DP
這個題,讓我看到就想到最長上公升子串行,1000的大小,n 2 就可以 但是注意到,最高的兩個士兵可以是相同身高的,所以,再求出左右兩個最長上公升子串行之後,最後得出結果的時候要注意這一點。這個地方 wa 了好多次,這個題目的通過率這麼低 應該就是這個點。include include includ...