#include<stdio.h>
#define N 21
int a[25]={0,9,8,9,9,5,7,4,2,2,4,5,6,7,8,9,3,3,4,5,1};
int dfs(int l,int r){
if(l>r){
return 1;
}
if(l==r){
return a[l];
}
int max=0;
for(int i=l;i<=r;i++){
int w=dfs(l,i-1)*dfs(i+1,r)+a[i];
if(w>max) max=w;
}
return max;
}
int main(){
printf("%d\n",dfs(1,20));
return 0;
}
搜索-dfs-二叉树
最新推荐文章于 2024-05-23 14:35:11 发布