01背包与多重背包写法
01背包外层控制物品
内层控制重量,从大到小,从小到大会重复
多重背包外层控制重量
内层控制物品
// for(int i = 0; i < wordDict.size(); i++) // { // int m = wordDict[i].size(); // for(int j = s.length() - 1; j >= m - 1; j--) // { // int k = j; // while(k >= j - m + 1) // { // if(s[k] != wordDict[i][m - 1 - (j - k)]) // break; // k--; // } // if(k >= j - m + 1) continue; // if(j - m < 0) dp[j] = max(dp[j], m); // else dp[j] = max(dp[j], dp[j - m] + m); // cout << j << " " << dp[j] << endl; // } // } for(int j = 0; j < s.length(); j++) { for(int i = 0; i < wordDict.size(); i++) { int m = wordDict[i].size(); if(j - m + 1 >= 0) { int k = j; while(k >= j - m + 1) { if(s[k] != wordDict[i][m - 1 - (j - k)]) break; k--; } if(k >= j - m + 1) continue; if(j - m < 0) dp[j] = max(dp[j], m); else dp[j] = max(dp[j], dp[j - m] + m); } } }
自己选择的路,跪着也要走完。朋友们,虽然这个世界日益浮躁起来,只要能够为了当时纯粹的梦想和感动坚持努力下去,不管其它人怎么样,我们也能够保持自己的本色走下去。