P8786 [蓝桥杯 2022 省 B] 李白打酒加强版

【dfs题解】---只有50分

(头一回自己用dfs做出来了dp的hard等级的大题,从来没有拿50分这么高兴过哈哈哈哈哈)

复制代码
#include <bits/stdc++.h>
using namespace std;
int n,m;
long long ans=0;
const long long mol=1e9+7;
void dfs(int h,int d,int sum)
{
	
	if(h<0||d<0||sum<=0)
	return;
	if(h==0&&d==0&&sum==2)
	{
		ans++;
		ans%=mol;
		return;
	}
	if(sum%2!=0)
	{
		dfs(h-1,d,sum+1);
	}
	else{
		dfs(h-1,d,sum+1);
		dfs(h,d-1,sum/2);
	}
}
  
int main()
{
  scanf("%d%d",&n,&m);
  dfs(m-2,n,2);
  printf("%d",ans);
  return 0;
}

dp题解等赛后再补上

相关推荐
Paul_092010 分钟前
golang编程题
开发语言·算法·golang
颜酱15 分钟前
用填充表格法-继续吃透完全背包及其变形
前端·后端·算法
夏秃然18 分钟前
打破预测与决策的孤岛:如何构建“能源垂类大模型”?
算法·ai·大模型
氷泠22 分钟前
课程表系列(LeetCode 207 & 210 & 630 & 1462)
算法·leetcode·拓扑排序·反悔贪心·三色标记法
代码or搬砖25 分钟前
JVM垃圾回收器
java·jvm·算法
老鼠只爱大米26 分钟前
LeetCode算法题详解 15:三数之和
算法·leetcode·双指针·三数之和·分治法·three sum
客卿12327 分钟前
C语言刷题--合并有序数组
java·c语言·算法
Qhumaing28 分钟前
C++学习:【PTA】数据结构 7-1 实验6-1(图-邻接矩阵)
c++·学习·算法
菜鸟233号41 分钟前
力扣416 分割等和子串 java实现
java·数据结构·算法·leetcode
Swift社区1 小时前
LeetCode 469 凸多边形
算法·leetcode·职场和发展