leetcode 377. 組合總和 Ⅳ

2023.8.17

?

? ? ? ? ?本題屬于完全背包問題,乍一看和昨天那題?零錢兌換II?類似,但細看題目發現:今天這題是排列問題,而“零錢兌換II”是組合問題。排列問題強調順序,而組合順序不強調順序。

? ? ? ? 這里先說個結論:先遍歷物品,再遍歷背包,求出來的是組合數。(即{1,2}和{2,1}是等價的)? ? ???而先遍歷背包,再遍歷物品,求出來的是排列數。(即{1,2}和{2,1}是不等價的。)

? ? ? ? 本題思路還是和昨天那題類似,但是物品和背包的遍歷順序需要調換一下,因為本題需要求的是排列數。 代碼如下:

class Solution {
public:int combinationSum4(vector<int>& nums, int target) {vector<unsigned int> dp(target+1);dp[0] = 1;for(int j=0; j<=target; j++){for(int i=0; i<nums.size(); i++){if(j >= nums[i]){dp[j] += dp[j-nums[i]];}}}return dp[target];}
};

? ? ? ? ps:cpp代碼的dp數組需要聲明為<unsigned int>,不然如下示例通過不了。

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/42275.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/42275.shtml
英文地址,請注明出處:http://en.pswp.cn/news/42275.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

并查集、樹狀數組

并查集、樹狀數組、線段樹 并查集樹狀數組樹狀數組1 (單點修改&#xff0c;區間查詢)樹狀數組2 (單點查詢&#xff0c;區間修改) 并查集 【模板】并查集 題目描述 如題&#xff0c;現在有一個并查集&#xff0c;你需要完成合并和查詢操作。 輸入格式 第一行包含兩個整數 …

Scala中的Either的用法

在 Scala 中&#xff0c;Either 是一種表示兩種可能值的數據類型。它可以用來處理函數可能返回的兩種不同類型的結果&#xff0c;通常用于錯誤處理或者結果分支情況。Either 有兩個子類&#xff1a;Left 和 Right&#xff0c;其中 Left 通常用于表示錯誤或異常情況&#xff0c;…

1.物聯網LWIP網絡,TCP/IP協議簇

一。TCP/IP協議簇 1.應用層&#xff1a;FTP&#xff0c;HTTP&#xff0c;Telent&#xff0c;DNS&#xff0c;RIP 2.傳輸層&#xff1a;TCP&#xff0c;UDP 3.網絡層&#xff1a;IPV4&#xff0c;IPV6&#xff0c;OSPF&#xff0c;EIGRP 4.數據鏈路層&#xff1a;Ethernet&#…

YOLOv5改進系列(21)——替換主干網絡之RepViT(清華 ICCV 2023|最新開源移動端ViT)

【YOLOv5改進系列】前期回顧: YOLOv5改進系列(0)——重要性能指標與訓練結果評價及分析 YOLOv5改進系列(1)——添加SE注意力機制 YOLOv5改進系列(2

兩階段提交:詳解數據庫宕機引起的主從不一致問題、redolog與binlog的兩階段提交

0、基礎知識and問題 從基礎上我們了解&#xff1a; &#xff08;1&#xff09;redolog作為數據庫保證持久化的日志&#xff0c;在update事務提交后就會按一定的策略刷入磁盤中&#xff0c;在刷入后&#xff0c;即使數據庫斷電宕機&#xff0c;mysql也能從redolog中恢復數據到磁…

Matplotlib數據可視化(六)

目錄 1.繪制概率圖 2.繪制雷達圖 3.繪制流向圖 4.繪制極坐標圖 5.繪制詞云圖 1.繪制概率圖 from scipy.stats import norm fig,ax plt.subplots() plt.rcParams[font.family] [SimHei] np.random.seed() mu 100 sigma 15 x musigma*np.random.randn(437) num_bins …

【騰訊云 Cloud Studio 實戰訓練營】在線 IDE 編寫 canvas 轉換黑白風格頭像

關于 Cloud Studio Cloud Studio 是基于瀏覽器的集成式開發環境(IDE)&#xff0c;為開發者提供了一個永不間斷的云端工作站。用戶在使用Cloud Studio 時無需安裝&#xff0c;隨時隨地打開瀏覽器就能在線編程。 Cloud Studio 作為在線IDE&#xff0c;包含代碼高亮、自動補全、Gi…

winform 設置畫刷半透明

使用solidBrush新建畫刷&#xff0c;定義畫刷的顏色為透明色 Brush b new SolidBrush(Color.FromArgb(50, Color.Green)); 這里的50是透明度的設置&#xff0c;范圍從0-255&#xff1b; 0:無顏色 255:不透明 轉&#xff1a;c# 設置Brush 畫刷 透明_solidcolorbrush 透明色_…

git-fatal: No url found for submodule path ‘packages/libary‘ in .gitmodules

文章目錄 前言一、git submodule功能使用二、錯誤信息&#xff1a;三、解決方法&#xff1a;四、.gitmodules配置文件&#xff1a;總結 前言 最近在做vue項目&#xff0c;因為項目比較復雜&#xff0c;把功能拆分成很多子模塊&#xff0c;我們使用Git的submodule功能。遇到錯誤…

使用libvncserver庫快速搭建VNC服務端

文章目錄 VNC是什么libvncserver的優點和缺點構建libvncserver使用libvncserver搭建VNCServerX11模擬鼠標鍵盤操作libvncserver中處理鼠標鍵盤消息 VNC是什么 VNC(Virtual Network Computing)是一種使用遠程幀緩沖協議(RFB)的屏幕分享及遠程操作軟件。VNC的服務端可以通過RFP協…

Linux開機啟動程序添加root權限

Linux添加開機啟動程序 Debain、Ubuntu系列Linux開機之后會執行/etc/rc.local文件中的命令&#xff0c;所以&#xff0c;如果是想添加登陸用戶所具有權限的操作&#xff0c;可以在文件中exit 0之前添加開機自動執行的腳本命令。或者將執行腳本的權限修改為當前登錄用戶具有執行…

基于R語言APSIM模型進階應用與參數優化、批量模擬

隨著數字農業和智慧農業的發展&#xff0c;基于過程的農業生產系統模型在模擬作物對氣候變化的響應與適應、農田管理優化、作物品種和株型篩選、農田固碳和溫室氣體排放等領域扮演著越來越重要的作用。APSIM (Agricultural Production Systems sIMulator)模型是世界知名的作物生…

moodle單點登陸

在moodle/login添加sso.php <?phprequire(../config.php); require_once(lib.php);if($_SERVER[REQUEST_METHOD]==GET){$tokenId=$_GET[tokenId]; }else{$tokenId="fail";

C++新經典03--共用體、枚舉類型與typedef

共用體 共用體&#xff0c;也叫聯合&#xff0c;有時候需要把幾種不同類型的變量存放到同一段內存單元&#xff0c;例如&#xff0c;把一個整型變量、一個字符型變量、一個字符數組放在同一個地址開始的內存單元中。這三個變量在內存中占的字節數不同&#xff0c;但它們都從同…

idea 轉換為 Maven Project 的方法

選項&#xff1a; Add as Maven Project

通過TightVNC遠程訪問MacOS

目錄 一、下載 TightVNC 下載鏈接&#xff1a;https://www.tightvnc.com/ 下載后按步驟進行安裝&#xff0c;安裝完成后安裝目錄如下&#xff1a; 運行 tvnviewer.exe&#xff0c;輸入遠程 IP&#xff0c;點擊【connect】&#xff1a; 輸入密碼&#xff0c;點擊【OK】后即可遠…

Matlab中圖例的位置(圖例放在圖的上方、下方、左方、右方、圖外面)等

一、圖例默認位置 默認的位置在NorthEast r 10; a 0; b 0; t0:0.1:2.1*pi; xar*cos(t); ybr*sin(t); A1plot(x,y,r,linewidth,4);%圓 hold on axis equal A2plot([0 0],[1 10],b,linewidth,4);%直線 legend([A1,A2],圓形,line)二、通過Location對legend的位置進行改變 變…

企業電子招投標采購系統源碼之電子招投標的組成 tbms

? 功能模塊&#xff1a; 待辦消息&#xff0c;招標公告&#xff0c;中標公告&#xff0c;信息發布 描述&#xff1a; 全過程數字化采購管理&#xff0c;打造從供應商管理到采購招投標、采購合同、采購執行的全過程數字化管理。通供應商門戶具備內外協同的能力&#xff0c;為…

設計模式-觀察者模式(觀察者模式的需求衍變過程詳解,關于監聽的理解)

目錄 前言概念你有過這樣的問題嗎&#xff1f; 詳細介紹原理&#xff1a;應用場景&#xff1a; 實現方式&#xff1a;類圖代碼 問題回答監聽&#xff0c;為什么叫監聽&#xff0c;具體代碼是哪觀察者模式的需求衍變過程觀察者是為什么是行為型 總結&#xff1a; 前言 在軟件設計…

【C++類和對象】類有哪些默認成員函數呢?(下)

文章目錄 一、類的6個默認成員函數二、日期類的實現2.1 運算符重載部分2.2 日期之間的運算2.3 整體代碼1.Date.h部分2. Date.cpp部分 三. const成員函數四. 取地址及const取地址操作符重載擴展內容 總結 ヾ(????)&#xff89;" 人總要為過去的懶惰而付出代價ヾ(???…