動態規劃刷題

文章目錄

  • 動態規劃
    • 三步問題
    • 題目解析
    • 代碼

動態規劃

1. 狀態表示:dp[i],表示dp表中i下標位置的值
2. 狀態轉移方程:以i位置位置的狀態,最近的一步來劃分問題,比如可以將狀態拆分成前狀態來表示現狀態,dp[i] = dp[i-1] + dp[i-2] + dp[i-3]
3. 初始化
4. 填表順序
5. 返回值
線性dp的狀態表示dp[i]都是以某個位置為開頭或者以某個位置為結尾

三步問題

在這里插入圖片描述

題目解析

1. 狀態表示:以i為結尾,dp[i]是什么意思,是一共有多少種方法
2. 狀態轉移方程:以i位置最近的一步來劃分問題
3. 初始化:dp[1] = 1,dp[2] = 2,dp[3] = 4
4. 填表順序:從左向右填表
5. 返回值:返回dp[n]的狀態

在這里插入圖片描述

代碼

class Solution 
{
public:int waysToStep(int n) {if(n == 1 || n == 2) return n;else if(n == 3) return 4;long long k = 1e9 + 7;vector<int> dp(n+1);dp[1] = 1,dp[2] = 2,dp[3] = 4;for(int i = 4;i <= n;i++){dp[i] = (((dp[i-1] + dp[i-2]) % k) + dp[i-3]) % k;} return dp[n];}
};

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

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

相關文章

Vue 3 搭建前端模板并集成 Ant Design Vue(2025)

目錄 一、環境安裝 二、創建項目 三、前端工程化配置 四、引入組件庫 五、選擇 API 風格 1、選項式 API (Options API)? 2、組合式 API (Composition API)? 六、頁面信息修改 七、通用布局選擇 1、基礎布局結構 2、全局底部欄 3、動態替換內容 4、全局頂部欄 …

C++雜記——RTTI

run-time type information or run-time type identification (RTTI) RTTI&#xff08;Runtime Type Information&#xff09;是C中的一個特性&#xff0c;允許程序在運行時獲取類型信息。它主要用于多態&#xff08;尤其是基于類的多態&#xff09;時&#xff0c;幫助判斷對象…

【Mac】git使用再學習

目錄 前言 如何使用github建立自己的代碼庫 第一步&#xff1a;建立本地git與遠程github的聯系 生成密鑰 將密鑰加入github 第二步&#xff1a;創建github倉庫并clone到本地 第三步&#xff1a;上傳文件 常見的git命令 git commit git branch git merge/git rebase …

六十天前端強化訓練之第七天CSS預處理器(Sass)案例:變量與嵌套系統詳解

歡迎來到編程星辰海的博客講解 目錄 一、知識講解&#xff08;3000字&#xff09; 1. Sass基礎概念 2. 變量系統 2.1 變量定義 2.2 數據類型 2.3 作用域優先級 2.4 變量實踐場景 3. 嵌套系統 3.1 選擇器嵌套 3.2 屬性嵌套 3.3 嵌套規則 二、核心代碼示例 完整SCSS…

Docker和K8S中pod、services、container的介紹和關系

在容器化技術中&#xff0c;Docker、Kubernetes&#xff08;K8S&#xff09;、Pod、Service 和 Container 是核心概念&#xff0c;理解它們的關系對構建和管理現代應用至關重要。以下是詳細的分步解釋&#xff1a; 1. 核心概念定義 (1) Container&#xff08;容器&#xff09;…

DeepSeek掘金——DeepSeek R1驅動的PDF機器人

DeepSeek掘金——DeepSeek R1驅動的PDF機器人 本指南將引導你使用DeepSeek R1 + RAG構建一個功能性的PDF聊天機器人。逐步學習如何增強AI檢索能力,并創建一個能夠高效處理和響應文檔查詢的智能聊天機器人。 本指南將引導你使用DeepSeek R1 + RAG構建一個功能性的PDF聊天機器人…

基于 ?MySQL 數據庫?對三級視圖(用戶視圖、DBA視圖、內部視圖)的詳細解釋

基于 ?MySQL 數據庫?對三級視圖&#xff08;用戶視圖、DBA視圖、內部視圖&#xff09;的詳細解釋&#xff0c;結合理論與實際操作說明&#xff1a; 一、三級視圖核心概念 數據庫的三級視圖是 ANSI/SPARC 體系結構的核心思想&#xff0c;MySQL 的實現邏輯如下&#xff1a; …

WP 高級摘要插件:助力 WordPress 文章摘要精準自定義顯示

wordpress插件介紹 “WP高級摘要插件”功能豐富&#xff0c;它允許用戶在WordPress后臺自定義文章摘要。 可設置摘要長度&#xff0c;靈活調整展示字數&#xff1b;設定摘要最后的顯示字符&#xff0c; 如常用的省略號等以提示內容未完整展示&#xff1b;指定允許在摘要中顯示…

三次握手內部實現原理

socket()創建一個新的套接字 int socket(int domain, int type, int protocol)&#xff1b; 參數&#xff1a; domain&#xff1a;地址族&#xff0c;如 AF_INET&#xff08;IPv4&#xff09;&#xff0c;AF_INET6&#xff08;IPv6&#xff09; type&#xff1a;套接字類型&…

DeepSeek 助力 Vue3 開發:打造絲滑的懸浮按鈕(Floating Action Button)

前言&#xff1a;哈嘍&#xff0c;大家好&#xff0c;今天給大家分享一篇文章&#xff01;并提供具體代碼幫助大家深入理解&#xff0c;徹底掌握&#xff01;創作不易&#xff0c;如果能幫助到大家或者給大家一些靈感和啟發&#xff0c;歡迎收藏關注哦 &#x1f495; 目錄 Deep…

【前端場景題】如何應對頁面請求接口的大規模并發問題

如何應對頁面請求接口的大規模并發問題&#xff0c;尤其是前端方面的解決方案&#xff0c;并且需要給出詳細的代碼解釋。首先&#xff0c;我需要仔細閱讀我搜索到的資料&#xff0c;找出相關的信息&#xff0c;然后綜合這些信息來形成答案。 首先看&#xff0c;它提到前端優化策…

360個人版和企業版的區別

功能方面 管理能力 個人版&#xff1a;主要用于單臺設備的安全防護&#xff0c;只能在單獨的電腦上進行安裝使用&#xff0c;無集中管理和監控其他設備的功能。企業版&#xff1a;可批量管理大量電腦&#xff0c;如公司的十臺、百臺甚至千臺電腦。管理員能通過管理控制臺對所有…

蘋果與小米破冰合作:iPhone 16e全面支持Find My網絡,跨生態互通實現技術性突破

2025年2月28日&#xff0c;蘋果公司正式宣布其中國區特供機型iPhone 16e全面接入Find My網絡升級版&#xff0c;并與小米旗艦機型15 Ultra實現跨平臺互聯互通。 核心功能升級 1. Find My網絡能力擴展 iPhone 16e搭載的Find My 3.0網絡支持亞米級定位&#xff08;誤差<1米…

Spring MVC 程序開發(1)

目錄 1、什么是 SpringMVC2、返回數據2.1、返回 JSON 對象2.2、請求轉發2.3、請求重定向2.4、自定義返回的內容 1、什么是 SpringMVC 1、Tomcat 和 Servlet 分別是什么&#xff1f;有什么關系&#xff1f; Servlet 是 java 官方定義的 web 開發的標準規范&#xff1b;Tomcat 是…

一鍵安裝Mysql部署腳本之Linux在線安裝Mysql,腳本化自動化執行服務器部署(附執行腳本下載)

相關鏈接 一鍵安裝Redis部署腳本之Linux在線安裝Redis一鍵安裝Mysql部署腳本之Linux在線安裝Mysql一鍵安裝JAVA部署腳本之Linux在線安裝JDK一鍵安裝Nginx部署腳本之Linux在線安裝NginxNavicat最新版(17)詳細安裝教程Xshell客戶端免費版無需注冊XFtp客戶端免費版無需注冊 前言…

1.2.2 使用Maven方式構建Spring Boot項目

本次實戰通過Maven方式構建了一個Spring Boot項目&#xff0c;實現了簡單的Web應用。首先&#xff0c;創建了Maven項目并設置好項目名稱、位置、構建系統和JDK等。接著&#xff0c;添加了Spring Boot的父項目依賴和web、thymeleaf起步依賴。然后&#xff0c;創建了項目啟動類He…

【愚公系列】《Python網絡爬蟲從入門到精通》037-文件的存取

標題詳情作者簡介愚公搬代碼頭銜華為云特約編輯,華為云云享專家,華為開發者專家,華為產品云測專家,CSDN博客專家,CSDN商業化專家,阿里云專家博主,阿里云簽約作者,騰訊云優秀博主,騰訊云內容共創官,掘金優秀博主,亞馬遜技領云博主,51CTO博客專家等。近期榮譽2022年度…

C++:vector的push_back時間復雜度分析

引導示例 #include <iostream> #include <vector>int main() {std::vector<int> v;std::cout << v.capacity() << " ";int last 0;for (int i 1; i < 10; i) {v.push_back(1);std::cout << v.capacity() << " …

LeetCode 202. 快樂數 java題解

https://leetcode.cn/problems/happy-number/description/ 哈希表 class Solution {public boolean isHappy(int n) {if(n1) return true;HashSet<Integer> setnew HashSet<>();while(n!1&&!(set.contains(n))){//沒找到結果&#xff1b;沒有重復出現過se…

11.24 SpringMVC(1)@RequestMapping、@RestController、@RequestParam

一.RequestMapping("/user")//HTTP 請求方法既支持get也支持post&#xff0c;可表示為類路徑與方法路徑 二.RequestMapping(value "/m7", method {RequestMethod.POST, RequestMethod.GET}) value這個參數指定了請求的 URL 路徑。method 參數指定了允許…