递推

2024/4/11 22:11:12

dp入门:从暴力dfs到dp

本篇为小金鱼大佬视频的学习笔记,原视频链接:https://www.bilibili.com/video/BV1r84y1379W?vd_source726e10ea5b787a300ceada715f64b4bf 基础概念 暴力dfs很多时候仅能过部分测试点,要想将其优化,一般以 dfs -> 记忆化搜索 …

[bzoj3157][bzoj3516][bzoj4126]国王奇遇记

Description 求∑i1nimmin<10^9,普通版m<200&#xff0c;加强版m<1000&#xff0c;加强版之再加强版m<500000Solution 1.普通版 很容易想到倍增的思路&#xff0c;只不过很难实现。 设F(n,k)∑ni1ikmi然后,F(n1,k)∑i1n1ikmim∑i2n1ikmim∑i1n(i1)kmi1mm∑i1nm…

codeforces 1529 D.Kavi on Pairing Duty

题面 题意 给你一个n&#xff0c;坐标上有2n个点&#xff0c;间距为1&#xff0c;让你求出满足题意得方案数。 每两个点连接成一条线段&#xff0c;要求线段两两之间要么长度相等&#xff0c;要么一个线段被另一个线段包含 题解(找规律) 设ai表示&#xff0c;ni 时有多少方案数…

HDU 2044 一只小蜜蜂... (递推)

题目&#xff1a;HDU-2044 题目链接&#xff1a;http://acm.hdu.edu.cn/showproblem.php?pid2044 题目&#xff1a; 一只小蜜蜂... Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 55687 Accepted Submissio…

ZOJ - 3747 Attack on Titans [有条件限制的经典递推计数好题]

题目大意是 有n个士兵的排列&#xff0c;士兵有GRP三种类型&#xff0c;要求至少有m个G士兵连续&#xff0c;至多有k个R士兵连续&#xff0c;问有多少种方案&#xff0c;答案 取模1e97 题目分析 我们看到这个题目&#xff0c;很显然是一个计数的问题&#xff0c;那么如果从简…

杭电ACM——1297,Children’s Queue(递推)

递推公式&#xff1a;f[n]f[n-1]f[n-2]f[n-4]; 突破口&#xff1a;如何得到递推公式&#xff0c;主要是最后一个f[n-4]&#xff0c;这个稍作解释&#xff0c;假如第n,n-1个都是女孩&#xff0c;也就是n-2个人都站好了以后&#xff0c;末尾再插上两个女孩&#xff0c;这个时候&a…

HDU2062,Subset sequence(思维+递推)

emmmmm&#xff0c;题解是看下面的大牛的&#xff1a; https://www.cnblogs.com/AOQNRMGYXLMV/p/3832909.html 简单的说就是&#xff0c;由n个数字构成的所有排列&#xff0c;以1,2,3,…n,为开头的排列的数量是相同的&#xff0c;设为num[n]&#xff0c;因此将m除num[n]就是第一…

杭电ACM--2018(递推)

emmmmmm…一道水题&#xff0c;结果还是弄错了&#xff0c;把递推公式弄错了&#xff0c;结果一直WA。 正确题解如下&#xff1a; #include<cstdio> using namespace std; int a[60]; int main() { int n; int i; for(i1;i<59;i) { if(i<4) a[i]i; else a[i]a[i-…

杭电ACM——2085,核反应堆(递推)

突破口&#xff1a; 设i秒高能粒子&#xff0c;低能粒子的数量分别为h[i],l[i]&#xff0c; h[0]1,l[0]0; h[i]3h[i-1]2l[i-1], l[i]h[i-1]l[i-1]. 代码如下&#xff1a; #include<cstdio> #include<iostream> #include<algorithm> #include<cstring>…

codeforces 1472 C Long Jumps 递推

题面 题意 题解 开始想的的是直接模拟题意&#xff0c;遍历一遍然后求最大&#xff0c;TLE&#xff0c;继续优化&#xff0c;可以加记忆化搜索&#xff0c;把遍历过的标记&#xff0c;还是TLE其实是一个递推&#xff0c;直接从后往前遍历即可 代码 #include<bits/stdc.h&g…

杭电ACM——2064,汉诺塔III(递推)

突破口&#xff1a;有n个盘子&#xff0c;先将上面n-1个盘子移动最右边&#xff0c;f(n-1)次&#xff0c;再将第n个最下面的盘子移到第二根柱子&#xff0c;再将最右边n-1个移动到最左边&#xff0c;f(n-1)次&#xff0c;再将第n个盘子移到最右边&#xff0c;最后将n-1个盘子又…

AcWing 95. 费解的开关

原题链接&#xff1a;https://www.acwing.com/problem/content/97/看了前几篇题解和y总的视频讲解&#xff0c;总有一个奇怪的点搞不明白&#xff0c;为什么说第一行确定了&#xff0c;第二行就确定了&#xff0c;第三行接下来也就确定了。不做一个假设本蒟蒻怎么会明白(((假设…

灵神笔记(1)----动态规划篇

文章目录 介绍动态规划入门&#xff1a;从记忆化搜索到递推打家劫舍递归记忆化递归递推滚动变量 背包0-1 背包递归写法记忆化递归 目标和记忆化搜索递推两个数组一个数组 完全背包记忆化递归搜索 零钱兑换记忆化递归递推 背包问题变形[至多|恰好|至少] 最长公共子序列记忆化搜索…

递归(recursion) 迭代(iteration)

求 n! 有两个思路&#xff1a; 迭代 iteration 递归 recursion //这是递归 int factorial(int n) {if(n>1)reurn n * factorial(n-1);elsereturn 1; }//这是迭代 int factorial(int n) {int i, s1;for(i1; i<n; i){s s * i;}return s; } 递归法 就是在运行的过程中调…

AcWing95.费解的开关

题目 你玩过“拉灯”游戏吗&#xff1f;25 盏灯排成一个 55 的方形。每一个灯都有一个开关&#xff0c;游戏者可以改变它的状态。每一步&#xff0c;游戏者可以改变某一个灯的状态。游戏者改变一个灯的状态会产生连锁反应&#xff1a;和这个灯上下左右相邻的灯也要相应地改变其…

leetCode 494. 目标和 + 动态规划 + 记忆化搜索 + 递推 + 空间优化

关于本题我的往期文章&#xff1a; LeetCode 494.目标和 &#xff08;动态规划 性能优化&#xff09;二维数组 压缩成 一维数组_呵呵哒(&#xffe3;▽&#xffe3;)"的博客-CSDN博客https://heheda.blog.csdn.net/article/details/133253822 给你一个非负整数数组 nums…

【蓝桥杯】翻硬币

翻硬币 思路&#xff1a; 其实有点贪心的意思&#xff0c;依次比较&#xff0c;不同就1&#xff0c;然后修改自己的字符串和下一个的字符串&#xff0c;再匹配。 #include<iostream> #include<string> using namespace std;string now,res;int main(void) {cin&g…

Educational Codeforces Round 163 (Rated for Div. 2)(A,B,C,D,E)

比赛链接 好忙好忙好忙&#xff0c;慢慢补老比赛的题解了。 这场没啥算法&#xff0c;全是思维。有也是BFS&#xff0c;屎。 A. Special Characters 题意&#xff1a; 您将得到一个整数 n n n 。 您的任务是构建一串大写的拉丁字母。此字符串中必须正好有 n n n 个特殊字…

HDU 2047 阿牛的EOF牛肉串

题目&#xff1a;HDU-2047 题目链接&#xff1a;http://acm.hdu.edu.cn/showproblem.php?pid2047 题目&#xff1a; 阿牛的EOF牛肉串 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 28348 Accepted Submiss…

AcWing第81 82 83场周赛总结

第81场周赛 希望我下次不用再写这种东西 这次比赛被国强打爆&#xff0c;希望下次可以有所进步。 T2&#xff1a;等差数列 这其实是一个暴力&#xff0c;但是由于参加CSP与NOIp&#xff0c;对于题目的难度想象过高&#xff0c;想的过于复杂&#xff0c;用了个差分的方法&#x…

杭电ACM——2077,汉诺塔IV(递推/思维)

突破口&#xff1a; 既然是汉诺塔&#xff0c;那就非常有可能与原来的汉诺塔问题有联系&#xff0c;手动推出n1,2,3,4的移动次数分别为2,4,10,28&#xff0c;而原汉诺塔问题n1,2,3时分别为2,8,26&#xff0c;有什么发现呢&#xff1f; 假设原汉诺塔的数列为x1[20]&#xff0c;现…

LeetCode 70.爬楼梯 + 记忆化搜索 + 递推 + 动态规划 + 空间优化

关于此题的我的往期文章&#xff1a; leetCode 70.爬楼梯 动态规划_呵呵哒(&#xffe3;▽&#xffe3;)"的博客-CSDN博客https://blog.csdn.net/weixin_41987016/article/details/133325224?spm1001.2014.3001.5501 上i-1层楼梯&#xff0c;有 dfs(i-1) 种方法&#x…

HDU 2048 神、上帝以及老天爷(递推)

题目&#xff1a;HDU-2048 题目链接&#xff1a;http://acm.hdu.edu.cn/showproblem.php?pid2048 题目&#xff1a; 神、上帝以及老天爷 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 30928 Accepted Su…

SHUOJ 1013 过河卒问题 (递推)

题目&#xff1a;SHUOJ 1013 题目链接&#xff1a;http://202.121.199.212/JudgeOnline/problem.php?id1013 题目&#xff1a; 1013: 过河卒 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 1584 Solved: 464 [Submit][Status][Web Board] Description 如图&#xff0c;A…

HDU 2049 不容易系列之(4)——考新郎(错排)(递推)

题目&#xff1a;HDU-2049 题目链接&#xff1a;http://acm.hdu.edu.cn/showproblem.php?pid2049 题目&#xff1a; 不容易系列之(4)——考新郎 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 29663 Accept…

【洛谷】 P1240 诸侯安置(递推)

洛谷P1240 诸侯安置 点击此处去OJ 问题描述很久以前&#xff0c;有一个强大的帝国&#xff0c;它的国土成正方形状&#xff08;需旋转45来看&#xff09;&#xff0c;图1所示为n3时的情况。这个国家有若干诸侯。由于这些诸侯都曾立下赫赫战功&#xff0c;因此国王准备给他们每…

Educational Codeforces Round 57 1096F - Inversion Expectation(递推)

这道题如果用我的方法分解比较多&#xff0c;所以我注释了一下代码&#xff0c;方便大家看_(:з」∠)_. A.问题转化 求所有可能的不同序列的逆序数期望. 很容易知道所有不同情况有vac!vac!vac!种,vacvacvac是空位置的个数&#xff0c;这样我们就直接求所有不同序列的逆序数之…

【c++基础】数池塘(四方向)

说明 农夫约翰的农场可以表示成N*M&#xff08;1≤N、M≤100&#xff09;个方格组成的矩形。由于近日的降雨&#xff0c;在约翰农场上的不同地方形成了池塘。每一个方格或者有积水&#xff08;W&#xff09;或者没有积水&#xff08;.&#xff09;。农夫约翰打算数出他的农场上…

leetCode 416.分割等和子集 + 01背包 + 动态规划 + 记忆化搜索 + 递推 + 空间优化

关于此题我的往期文章&#xff1a; LeetCode 416.分割等和子集&#xff08;动态规划【0-1背包问题】采用一维数组dp:滚动数组&#xff09;_呵呵哒(&#xffe3;▽&#xffe3;)"的博客-CSDN博客https://heheda.blog.csdn.net/article/details/133212716看本期文章时&…

LeetCode 0070. 爬楼梯:动态规划(递推)

【LetMeFly】70.爬楼梯&#xff1a;动态规划&#xff08;递推&#xff09; 力扣题目链接&#xff1a;https://leetcode.cn/problems/climbing-stairs/ 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢&#x…

费解的开关

这道题也是一道利用递推的题目&#xff0c;超级有趣 首先对于任意一个方块&#xff0c;能改变它的只有它自己&#xff0c;以及它四周的方块 因此我们可以这样想&#xff0c;现枚举出第一行的每一种可能性 对于第二行的每一个方块来说&#xff0c;只要它上面的方块是亮的&#x…

AcWing 95. 费解的开关(递推)

题目链接 活动 - AcWing 本活动组织刷《算法竞赛进阶指南》&#xff0c;系统学习各种编程算法。主要面向有一定编程基础的同学。https://www.acwing.com/problem/content/97/ 题解 只要第一行开关的状态确定&#xff0c;则所有开关的状态都可以被推出来。第一行开关总共有种操…

【算法】矩阵快速幂优化动态规划

文章目录 知识讲解题目列表[矩阵快速幂] 题目列表&#x1f4d5;70. 爬楼梯解法1——线性DP解法2——矩阵快速幂 509. 斐波那契数1137. 第 N 个泰波那契数1220. 统计元音字母序列的数目解法1——线性DP解法2——矩阵快速幂优化DP 552. 学生出勤记录 II&#xff08;&#x1f6b9;…

每日算法打卡:机器人跳跃 day 11

文章目录 原题链接题目描述输入格式输出格式数据范围输入样例1&#xff1a;输出样例1&#xff1a;输入样例2&#xff1a;输出样例2&#xff1a;输入样例3&#xff1a;输出样例3&#xff1a; 题目分析示例代码 原题链接 730. 机器人跳跃问题 题目难度&#xff1a;中等 题目来…

AcWing 126. 最大的和

题目链接 给定一个包含整数的二维矩阵&#xff0c;子矩形是位于整个阵列内的任何大小为 11 或更大的连续子阵列。 矩形的总和是该矩形中所有元素的总和。 在这个问题中&#xff0c;具有最大和的子矩形被称为最大子矩形。 例如&#xff0c;下列数组&#xff1a; 0 -2 -7 0 9…

Jam的计数法

Description Jam是个喜欢标新立异的科学怪人。他不使用阿拉伯数字计数&#xff0c;而是使用小 写英文字母计数&#xff0c;他觉得这样做&#xff0c;会使世界更加丰富多彩。在他的计数法中&#xff0c;每个数字的位数都是相同的&#xff08;使用相同个数的字母&#xff09;&…

HLOJ 1936 铺满方格

有一个1n的长方形&#xff0c;由边长为1的n个方格构成&#xff0c;例如&#xff0c;当n3时为13的方格长方形如下图所示。求用11、12、13的骨牌铺满方格的方案总数。 输入格式: 测试数据有多组&#xff0c;处理到文件尾。每组测试输入一个整数n&#xff08;1≤n≤50&#xff09…

OJ万题详解––组合线段(C++详解)

好久没有更新博文了&#xff0c;我上一篇博文的发布时间还是&#xff1a; 题目 这是我们周考的第二道题&#xff0c;乍一看&#xff0c;很简单&#xff0c;仔细做&#xff0c;更简单。&#xff08;我都没做起&#xff09; 分析 我相信&#xff0c;很多人第一次看到这个题目就…

leetCode 213. 打家劫舍 II + 动态规划 + 从记忆化搜索到递推 + 空间优化

关于此题我的往期文章,动规五部曲详解篇&#xff1a; leetCode 213. 打家劫舍 II 动态规划 房间连成环怎么偷呢&#xff1f;_呵呵哒(&#xffe3;▽&#xffe3;)"的博客-CSDN博客https://heheda.blog.csdn.net/article/details/133409962213. 打家劫舍 II - 力扣&#x…

HDU1443(约瑟夫环的应用)

题目链接 题目描述&#xff1a; Joseph Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 2209 Accepted Submission(s): 1342 Problem DescriptionThe Josephs problem is notoriously known. For those who …

归并排序三种常见写法

算法思路 归并排序是一种分治算法&#xff1a;首先将数组分成两半&#xff0c;然后对每一半进行归并排序&#xff0c;最后将两个有序的子数组合并&#xff0c;以得到最终的排序数组。为了简洁下面代码中会调用 STL 的 i n p l a c e _ m e r g e inplace\_merge inplace_merg…

递推算法

递推简介 一个问题的求解需一系列的计算&#xff0c;在已知条件和所求问题之间总存在着某种相互联系的关系&#xff0c;如果可以找到前后过程之间的数量关系&#xff08;即递推式&#xff09;&#xff0c;那么&#xff0c;从问题出发逐步推到已知条件&#xff0c;此种方法叫逆…