ACWing动态规划DP采花生 Hello Kitty想摘点花生送给她喜欢的米老鼠。她来到一片有网格状道路的矩形花生地(如下图),从西北角进去,东南角出来。地里每个道路的交叉点上都有种着一株花生苗,上面有若干颗花生,经过一株花生苗就能摘走该它上面所有的花生。Hello Kitty只能向东或向南走,不能向西或向北走。问Hello Kitty最多能够摘到多少颗花生。输入格式第一行是一个整数T,代表一共有多少组数据。接下来是T组数据。每组数据的第一行是两个整数,分别代表花生苗的行数R和列数 C。每
深度优先遍历 洛谷P1219八皇后 题目描述一个如下的6×6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。上面的布局可以用序列 246135来描述,第ii个数字表示在第ii行的相应位置有一个棋子,如下:行号 123456列号 246135这只是棋子放置的一个解。请编一个程序找出所有棋子放置的解。并把它们以上面的序列方法输出,解按字典顺序排列。请输出前33个解。最后一行是解的总个数。输入...
Leetcode17电话号码的字母组合(dfs) 前面见过DFS了,现在来刷一道dfs的模板题来体会一下dfs吧DFS(深度优先搜索)leetcode——46全排列_Soraku7的博客-CSDN博客17. 电话号码的字母组合难度中等1899收藏分享切换为英文接收动态反馈给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。答案可以按任意顺序返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例 1:输入:digits = "23"输出:["ad","ae","af","bd...
洛谷P1011车站 题目描述火车从始发站(称为第 1 站)开出,在始发站上车的人数为 a,然后到达第 2 站,在第 2 站有人上、下车,但上、下车的人数相同,因此在第 2 站开出时(即在到达第 3 站之前)车上的人数保持为 a 人。从第 3 站起(包括第 3 站)上、下车的人数有一定规律:上车的人数都是前两站上车人数之和,而下车人数等于上一站上车人数,一直到终点站的前一站(第(n−1) 站),都满足此规律。现给出的条件是:共有 n 个车站,始发站上车的人数为 a ,最后一站下车的人数是 m(全部下车)。试问 x 站开出时车
洛谷P1216数字三角形 ——动态规划 题目描述观察下面的数字金字塔。写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大。每一步可以走到左下方的点也可以到达右下方的点。 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 在上面的样例中,从 7→3→8→7→5 的路径产生了最大输入格式第一个行一个正整数 r ,表示行的数目。后面每行为这个数字金字塔特定行包含的整数。输出格式单独的一行,包含那个可
DFS(深度优先搜索)leetcode——46全排列 46. 全排列难度中等1986给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。示例 1:输入:nums = [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]示例 2:输入:nums = [0,1]输出:[[0,1],[1,0]]示例 3:输入:nums = [1]输出:[[1]]提示:1 <= nums.length
算法导论笔记——堆排序1 堆的这部分内容比较多,我会分成几个部分进行讲解。所有的讲解基本上是 基于《算法导论》堆(二叉堆)说白了其实就是个数组 , 它可以被近似的看作完全二叉树,树上的每一个节点对应数组中的每一个元素。这里简单的介绍一下完全二叉树 , 完全二叉树是从左往右依次填充 , 这里举一个例子方便大家理解像这样 , 其中第六个节点不是从左向右依次填充的 , 所以这棵树不是完全二叉树如果改成这样,就是完全二叉树二叉树就简单介绍到这里 , 这里可以画一个二叉树和堆的关系图 , 方便大家更好的理解堆
洛谷P1303A*B Problem高精度模拟乘法 题目描述求两数的积。输入格式两行,两个整数。输出格式一行一个整数表示乘积。输入输出样例输入 #1复制1 2输出 #1复制2说明/提示每个数字不超过 10^{2000} ,需用高精。经典的模拟题目, 模拟高精度乘法。高精度乘法即超出计算机的整形范围,无法进行直接计算,因此所使用的算法这里我们先看一下我们平时是怎么算乘法的那么再看一下如果使用计算机应该如何模拟乘法用计算机计算就是取消进位,然后再及进行每一位的加法最后再进行进位即...
洛谷P2241统计方形 题目背景1997年普及组第一题题目描述有一个n×m 方格的棋盘,求其方格包含多少正方形、长方形(不包含正方形)。输入格式一行,两个正整数 n,m(5000n≤5000,m≤5000)。输出格式一行,两个正整数,分别表示方格包含多少正方形、长方形(不包含正方形)。输入输出样例输入 2 3输出 8 10题目简单易懂,可是想要做这道题目还是需要一些小技巧的。这里就拿题目的例子进行举例,有一个2 * 3的棋盘,求他的正方形个数和长方形个数先看1 *