素数环问题
来源:互联网 发布:linux 禁止修改密码 编辑:程序博客网 时间:2024/06/05 05:14
#include<iostream>
using namespace std;
int a[21],b[21];//定义两个数组,b放数,a来判断用没用;
int test(int x);
void outs();
int prime(int x);//判素数;
int main()//主程序,不解释;
{
int m,i;
m=1;
for(i=1;i<=20;i++)
{
a[i]=1;
}
test(m);
return 0;
}
int test(int x)//一个递归思想,不断判断下一个数;
{
int i;
if(x>20&&prime(b[20]+b[1])==1)//当填完时,输出,注意,是个环,最后一个与第一个也要连起来;
{
outs();
}
else
{
for(i=1;i<=20;i++)
{
if((a[i]==1)&&prime(i+b[x-1])==1)
{
b[x]=i;
a[i]=0;
test(x+1);
if(b[20]!=0&&prime(b[20]+b[1])==1)
{
return 0;
}
else
{
a[i]=1;
b[x]=0;
}
}
}
}
}
int prime(int x)
{
int i;
if(x==1)
{
return 1;
}
else
{
for(i=2;i*i<=x;i++)
{
if(x%i==0)
{
return 0;
}
}
return 1;
}
}
void outs()//输出函数;
{
int i;
for(i=1;i<=20;i++)
{
if(i==1)
{
else
{
cout<<' '<<b[i];//其他的都要加空格;
}
}
cout<<endl;
using namespace std;
int a[21],b[21];//定义两个数组,b放数,a来判断用没用;
int test(int x);
void outs();
int prime(int x);//判素数;
int main()//主程序,不解释;
{
int m,i;
m=1;
for(i=1;i<=20;i++)
{
a[i]=1;
}
test(m);
return 0;
}
int test(int x)//一个递归思想,不断判断下一个数;
{
int i;
if(x>20&&prime(b[20]+b[1])==1)//当填完时,输出,注意,是个环,最后一个与第一个也要连起来;
{
outs();
}
else
{
for(i=1;i<=20;i++)
{
if((a[i]==1)&&prime(i+b[x-1])==1)
{
b[x]=i;
a[i]=0;
test(x+1);
if(b[20]!=0&&prime(b[20]+b[1])==1)
{
return 0;
}
else
{
a[i]=1;
b[x]=0;
}
}
}
}
}
int prime(int x)
{
int i;
if(x==1)
{
return 1;
}
else
{
for(i=2;i*i<=x;i++)
{
if(x%i==0)
{
return 0;
}
}
return 1;
}
}
void outs()//输出函数;
{
int i;
for(i=1;i<=20;i++)
{
if(i==1)
{
cout<<b[1];//第一个单独输出;
}else
{
cout<<' '<<b[i];//其他的都要加空格;
}
}
cout<<endl;
}
很多小伙伴这道题都卡在了环上,其实这道题没有提示清楚,虽然在题目上,希望你们看完后尽快解决这道题。
阅读全文
0 0
- 素数环问题
- 素数环问题
- 素数环问题
- 素数环问题
- 素数环问题
- 素数环问题
- 素数环问题 hdu1016
- 素数环问题
- 素数环问题
- 素数环问题
- 素数环问题
- XDOJ1010--素数环问题
- 求解素数环问题
- 素数环问题
- 1008 素数环问题
- 素数环问题
- 1230 -- 素数环问题
- 素数环问题
- Vjudge Prime Ring Problem (dfs)
- java concurrent 学习(1) – FutureTask原理
- 加1乘2平方
- 通俗理解LSTM的内部门操作(个人理解,可能不科学)
- 深入理解 CPU 和异构计算芯片 GPU/FPGA/ASIC
- 素数环问题
- 希腊字母
- JPA之JPA中的联合主键
- unity之固定渲染管线
- 【Python基础】1.3.1 面向过程编程与面向对象编程(类)实例
- 常用汇编指令
- 通过文件选择框获取指定的目录路径
- Qt数据可视化:Qt Data Visualization 与 Qt Charts 简介
- java实现插入排序