博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 1416
阅读量:6995 次
发布时间:2019-06-27

本文共 663 字,大约阅读时间需要 2 分钟。

本题目的dfs原理不难,个人认为难点式路径的记录,刚开始定义了很大的数组,提交的时候超出了内存的限制,后来在网上发现有的人用了栈存储,纠结了半天终于搞出来啦。

#include 
#include
int flag;int st[7];int head;int in[6];int digit;int digit2;int num1,max;int de;void dfs(int cur,int sum){ if(cur>=digit2) { if(sum>max) { max=sum; flag=1; head=0; st[head++]=cur; de=cur; } else if(sum==max) flag=2; return; } int i,j; for(i=1;i<=digit2;i++)//当前区间包含的位数 { if((cur+i)>digit2) break; int asum=0; for(j=0;j
num1) return; dfs(cur+i,sum+asum); if(cur
=0;i--) { printf(" "); for(j=st[i+1];j

 

转载于:https://www.cnblogs.com/lj-vs-lishimin/archive/2012/07/02/2774388.html

你可能感兴趣的文章