c++代码卡住了不肯运行 心塞

左手是笋右手是窝头 2016-04-09 11:18:09

调试了一下在dfs函数的第一个dfs函数那里卡住了
按下一步也没办法走
求大神给个建议 非常感谢
#include<iostream>
using namespace std;
int score=0,ls=0,a[1000],k,l;
int sum()
{
int ss=1;
for(int i=0;i<l;i)
ss=ss*a[i];
return ss;
}
void dfs(int ls)
{
if(ls==l-1)
{
score=score+sum();
return;
}
else
{
a[ls]=1;
ls++;
dfs(ls);
ls--;
a[ls]=k-2;
ls++;
dfs(ls);
ls--;
a[ls]=1;
ls++;
dfs(ls);
ls--;

}
}
int main()
{

cin>>k>>l;

dfs(ls);
cout<<score;
return 0;
}
...全文
332 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jlq623 2016-04-10
  • 打赏
  • 举报
回复
变量ls是不是弄了了死循环,return执行不到了。
  • 打赏
  • 举报
回复
Return也是多余的,可以删掉
  • 打赏
  • 举报
回复
改成i++就没问题了,非常感谢楼上各位
小灸舞 2016-04-10
  • 打赏
  • 举报
回复
改成i++就不会死循环了
gh_99 2016-04-09
  • 打赏
  • 举报
回复
int sum()
{
int ss=1;
for(int i=0;i<l;i)  //改为for(int i=0;i<l;i++)
ss=ss*a[i];
return ss;
}
cocoabird 2016-04-09
  • 打赏
  • 举报
回复
if(ls==l-1)
{
score=score+sum();
return;
}
这里的return去掉

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧