摘要:
原题链接:https://www.luogu.com.cn/problem/P1010 题意解读:输出一个正整数的2 的幂次方表示,需要用到二进制数学知识,将整数拆解成2的次幂之和,幂次方也要进行拆解,因此容易想到通过递归处理。 解题思路: 先看样例,给定整数137,要拆解成2的幂次方之和, 先考虑 阅读全文
摘要:
原题链接:https://www.luogu.com.cn/problem/P1259 题意解读:要打印最终的状态,关键在找到一些变化的规律,直接的暴力搜索复杂度太高。 解题思路: 从样例出发 ooooooo*******--oooooo--******o*oooooo******--o*ooooo 阅读全文
摘要:
原题链接:https://www.luogu.com.cn/problem/P3612 题意解读:字符串加长的时候,是先把最后一个字符接上,再拼接其余字符,注意不是翻转,要找第n个字符,就要看字符串加长几次后长度能超过n, 然后在加长后的字符串中找第n个字符。 解题思路: 如果直接通过模拟法,字符串 阅读全文
摘要:
原题链接:https://www.luogu.com.cn/problem/P1990 题意解读:用两种可旋转的形状铺满N*2的区域,求方案数,可以使用递推。 解题思路: 步骤1、设f[i]表示铺满i*2的区域的方案数 根据要求,i*2区域最后一列有4种可能的铺法: 如果采用图1铺法,则有f[i] 阅读全文
摘要:
原题链接:https://www.luogu.com.cn/problem/P1164 题意解读:要求正好把钱花完,并且统计不同的点菜方案数,本质上是一个背包问题,给定背包体积,要求物品正好装满背包的方案数。 解题思路: 1、最直观的解法是暴搜: DFS枚举每一道菜,有点或者不点两种选择,并且累加上 阅读全文
摘要:
原题链接:https://www.luogu.com.cn/problem/P2437 题意解读:根据题目要求,只能从标号小的蜂房爬到标号大的相邻蜂房,即每次要么爬到+1的蜂房,要么爬到+2的蜂房,本质上是一个斐波那契数列问题,和数楼梯问题一样。 解题思路: 要求从m号蜂房到n号蜂房的路径,即走n- 阅读全文
摘要:
原题链接:https://www.luogu.com.cn/problem/P1928 题意解读:要对形如xxx[Nxxx]xxx的字符串进行解码,[]内第一个数表示括号中字符串重复的次数,可以嵌套。 解题思路: 用递归进行处理,设函数decode(start,end)将下标从start到end之间 阅读全文
摘要:
原题链接:https://www.luogu.com.cn/problem/P1464 题意解读:虽然a、b、c可输入的范围比较大,但是递归中,只会限制在0-20以内,由于递归中有大量的重复计算,因此需要采用记忆化搜索来保存已经计算过的递归函数值。 解题思路: 定义三位数组LL mem[25][25 阅读全文
摘要:
原题链接:https://www.luogu.com.cn/problem/P1028 题意解读:给定n,构造数列,可以用递归或者递推。 解题思路: 1、递归 定义count(n)返回数列的个数 n==1时,count(n) = 1 n!=1时,count(n) = 1 + count(1) + c 阅读全文
摘要:
原题链接:https://www.luogu.com.cn/problem/P1044 题意解读:一组数入栈、出栈的方案数,如果了解卡特兰数,此题可以秒杀;如果不了解,也可以通过递归或者递推来解决 ;最次,可以通过DFS暴搜出方案数,当然对于n个数,一共有n次入栈、n次出栈,一共2n次,每次要么入栈 阅读全文