參考和
/*problem: 1014
memory: 320k time: 16ms
language: c++ result: accepted */
source code
#include#include#define value_num 6
void dfs(int value);//傳入當前已有的value,用貪心演算法累加,當等於mean_value時設定flag值為1,函式返回,表示可以分
int flag;//為1,表示可以分,為0表示不可以分
int m_num[value_num];//store the number of marbles in different value
int mean_value;
int main()
}}
poj 1014 硬幣分割
poj 1014 經典多重揹包問題 by baiwenlei 題目大意 給出一些價值在1 6範圍間的彈珠,判斷是否能夠按照價值等分 解題思路 多重揹包問題,不過本題中若價值不是偶數,直接返回即可 最後注意輸出的時候要求case之間有乙個空行,最後乙個case結束以後不空行。否則presentatio...
POJ 1014 解題報告
這道題我用的是最原始的dfs,雖然加了cache,避免了一些重複運算,但不出意料地tle了。然後就是 優化 把每個value中的item個數減到200以下 看discuss可以取到30甚至6的,還有一堆mod的解法 我都不明白這些優化的原理。見源 中注釋掉的dfs部分。1014 accepted 3...
POJ1014幾種解法小結
第一種解法 dp 感覺不像 思想 本題是找按價值均分大理石的方案是否存在,由於分配時不能破壞大理石,所以有個顯而易見的剪枝 當所有的大理石的總價值為奇數時肯定不能被均分。把 問題轉化一下即 由乙個人能否從原大理石堆中取出總價值為原來一半的大理石,本題的主要演算法是動態規劃,陣列flag代表狀態,設總...