Q
来源:互联网 发布:eia原油库存数据直播 编辑:程序博客网 时间:2024/04/27 18:48
n个数从1到n,构成一个环形,保证相邻的两个数和为素数,找到所有的可能
分析:
其实用dfs就可以,要特殊处理第一个数和第n个数
代码:
#include<iostream>#include<cstring>#include<string>using namespace std;int a[25],b[25],n,ss[40];void dfs(int k){ int i,j; if(k==n){ if(ss[a[k]+a[1]]==0) { for(j=1;j<n;j++) cout<<a[j]<<" "; cout<<a[n]<<endl; } return; } for(i=2;i<=n;i++) { if(b[i]==0) { if(ss[i+a[k]]==0&&k<n){ b[i]=1; a[k+1]=i; dfs(k+1); } b[i]=0; } }}int main(){ int i,j; ss[1]=1; a[1]=1; for(i=2;i<40;i++) { if(ss[i]==0) { for(j=i+1;j<40;j++) if(j%i==0) ss[j]=1; } } i=1; while(cin>>n&&n) { memset(b,0,sizeof(b)); cout<<"Case "<<i<<":"<<endl; if(n==1)cout<<1<<endl; else dfs(1); cout<<endl; i++; }}
感受:
挺简单的,只不过要注意输出形式,不然容易多空格
阅读全文
0 0
- q
- q
- q
- Q
- q
- q
- q
- q
- Q
- q
- Q
- Q
- Q
- Q
- Q
- Q
- Q
- Q
- SQL Server数据库日期型1900-01-01处理
- 【大数相加】SDUT 2046 RSA加密运算
- LA 3213
- Java----多线程1
- tensorflow中的优化函数
- Q
- 【洛谷】1821 [USACO07FEB]银牛派对Silver Cow Party 最短路径
- Redis(三):数据类型
- org.hibernate.HibernateException: No Hibernate Session bound to thread, and configuration does not a
- 一个关于 CP30+DBUtils 的简单数据库操作封装
- HDU 1088 Write a simple HTML Browser
- 利用贪心算法求解tsp问题
- 面试某乎
- Android M(Android 6.0)运行时权限开发详细解析