現有n個物品,第i個物品有兩個屬性a_i和b_i。在其中選取若干個物品,使得sum最大,同時sum,sum均非負(sum{}表示求和)。
第一行,乙個整數,表示物品個數n。 接下來n行,每行兩個整數,表示a_i和b_i。
乙個整數,表示最大的sum。
5-5 7
8 -6
6 -3
2 1-8 -5
8n < = 100 , |a_i| < = 1000 , |b_i| < = 1000
思路:列舉a_i,dpb_i,
狀態轉移方程:dp[i][j]=max(dp[i-1][j],dp[i-1][j-a[i].x]+a[i].y);
題解:
#includeusing namespace std;
int n,dp[102][200002],sum=-1e9+7;//sum記錄最終答案
struct nodea[102];
int main()
memset(dp,-127,sizeof(dp));//賦初值相當於乙個很小的負數
dp[0][100000]=0;
for(int i=1;i<=n;i++)
for(int i=100000;i<=200000;i++)//列舉x滿足條件的情況
cout
}
Boss掉落物品問題
原問題是這樣的 玩某遊戲中,乙個boss死亡之後會隨機掉落物品,一共有四種物品可能會掉落,boss每次死亡之後都會掉落一種物品,四種物品掉落的概率完全相同。現在需要收集其該boss掉落的四件物品,完成某項任務。問 平均要殺死該boss多少次才能湊滿全部4個物品。該問題實際上就是求boss掉落全部四個...
科洛斯第2季物品解析
物品列表 定義基本物品特性,如,物品 等級要求 基本屬性等 伺服器端檔案是 baseitem.dat 客戶端檔案是 loadingtbl baseitemv1.itm 內容是一樣的,區別在於伺服器端檔案每個物品屬性要少些,參見如下定義 服務端物品屬性,客戶端物品屬性 服務端物品屬性,物品圖示 定義物...
把n個物品分成m堆
1.把n個相同物品分成m個相同的堆,可空設為r n,m r n,m mk 1s n k 2.把n個相同物品分成m個相同的堆,不空設為s n,m s n,m s n 1,m 1 s n m m 3.把n個相同物品分成m個不同的堆,可空設為t n,m t n,m cm 1 n m 1 4.把n個相同物品...