全球热头条丨@蓝桥杯刷题记7

哔哩哔哩   2023-01-18 10:48:49

第一题:方格分割


(资料图)

题目分析

对称的使用dfs解决这个问题;

代码如下

第二题:猴子分香蕉

题目分析

这道题目的分析简单,但是要注意一点的是满足我所写代码的最小的数是16而不是正确答案3141,所以我改成了从17开始;

代码如下

第三题:明明的随机数

题目分析

使用set类型即可;

代码如下

第四题:修剪灌木

题目分析

//假设点i刚被修剪完为0,然后会向右/向左跑一趟,//端点会被遍历1次,i与端点间的点会被遍历两次//而重新修剪i的当天早上(因为是傍晚修剪,所以当天也会被算上)//达到最大高度,然后置零//也就是说://最大长度=中间节点数*2+1(端点)+1(自生)==max(左边/右边节点数)*2//左边端点数:i-1//右边端点数:n-i

代码如下

第五题:约数个数

题目分析:此题容易

代码如下

第六题:质数拆分

题目分析

这是一个背包问题,dp[i][j]表示的是前i个质数能拼出j的可能数,而转移方程为dp[i][j]=dp[i-1][j]+dp[i-1][j-prime[i]]其中需要dp[i-1][j]为基础数量,dp[i-1][j-prime[i]]为额外数量,只要当j的值大于prime[i]时才加上;

代码如下

第七题:矩形切割

题目分析:此题容易

代码如下

第八题:最大公共子串

题目分析

代码如下