poj1426之一深搜

来源:互联网 发布:淘宝势力周多久一次 编辑:程序博客网 时间:2024/04/30 10:52

这个思路看起来比较简单,从小到大依次遍历,直到搜出符合要求的 结果;

其实可以加一些剪枝,有点晚了就算了;

看到网上有人用打表,还有人用宽搜;

有时间我也试一试;

#include <vector>#include <algorithm>#include <cstdio>#include <iostream>#include <cstring>using namespace std;int n;int flag;void DFS(unsigned long long ans,int step){    if(flag)                      //结束    {        return ;    }    if(step == 19)                  //神奇的回溯    {        return ;    }    if(ans%n == 0)                  //结束条件判断    {        flag = 1;        printf("%lld\n",ans);      <span style="white-space:pre"></span>       //llu和I64u和lld都可以        return ;    }    else                         //深度搜索    {        DFS(ans*10,step+1);        DFS(ans*10+1,step+1);    }    return ;}int main(){    while(scanf("%d",&n)!=EOF&&n)  <span style="white-space:pre"></span>       //输入    {        flag = 0;        DFS(1,0);    }    return 0;}

1 0
原创粉丝点击