dfs练习题,我素数打表的时候j=i了,一直没发现实际上是j=i*i,以后可记住了。还有最后一行不能有空格。。。昏迷了半天

我的代码(紫书上的算法)

#include <bits/stdc++.h>
using namespace std;
int bk[110];
int num[110];
int vis[110];
int n;
void db()
{
for(int i=2;i*i<=100;i++)
if(!bk[i])
for(int j=i*i;j<=100;j+=i)
bk[j]=1;
}
void dfs(int cur)
{
if(cur==n&&!bk[num[n-1]+num[0]])
{
for(int i=0;i<n;i++)
{
cout<<num[i];
if(i<n-1)
cout<<" ";
}
cout<<endl;
}
else for(int i=2;i<=n;i++)
{
//cout<<vis[i]<<" "<<bk[i+num[cur-1]]<<endl;
if(!vis[i]&&!bk[i+num[cur-1]])
{
num[cur]=i;
vis[i]=1;
dfs(cur+1);
vis[i]=0;
}
}
}
main()
{
db();
int cas=0;
num[0]=1;
int ft=0;
while(cin>>n)
{
if(ft)
cout<<endl;
printf("Case %d:\n",++cas);
dfs(1);
ft=1;
}
}

最新文章

  1. Intent详解
  2. UVALive 5880 Vigen&#232;re Cipher Encryption (模拟)
  3. NSString 截取字符串
  4. duilib中控件拖拽功能的实现方法(附源码)
  5. vector&lt;int&gt; v2 = 42; 为何非法
  6. 1106关于解决erp单个商品同步的问题
  7. hdu 油菜花王国
  8. 【百科】CLEO 逐推縮寫命名法
  9. BZOJ 3944: Sum [杜教筛]
  10. Java基础:Java的四种引用
  11. [Swift]错误提示:Method does not override any method from its superclass
  12. php的扩展配置
  13. Service Fabric
  14. stark组件开发之自动生成URL
  15. Qt经典—线程、事件与Qobject
  16. sql server生成自动增长的字母数字字符串
  17. VMware Workstation 12激活码
  18. 描述一下JVM加载class文件的原理机制
  19. 用JS写一个简单的程序,算出100中7的倍数的最大值
  20. ssh证书生成与配置

热门文章

  1. 【C语言】编写函数实现库函数atof
  2. LeetCode 705. Design HashSet (设计哈希集合)
  3. oracle 存储过程使用动态sql
  4. UVA1601 The Morning afther Halloween
  5. IEC61131-3——数据类型
  6. Mariadb-lib
  7. yii2的form表单用法
  8. [Apple开发者帐户帮助]九、参考(3)支持的功能(iOS)
  9. $P5017 摆渡车$
  10. PHP富文本编辑器 之Kindeditor的使用 一