📄 emp7_09.cpp
字号:
#include"graph2.h"
#include"grary1.h"
const int n=10;
boolean visited[n+1];
bb1 b;
//int b[12];
GrpArr ag;
datagraph g1;
int i,j,k,Num;
char ch;
boolean prime(int n)
{int i;
boolean b1;
b1=true;
for (i=2;i<=Round(sqrt(n)) ;i++)
if (n%i==0)
b1=false;
boolean prime=b1;
return prime;
}
void getcc(int k,BB2& a)
{int i,j,sss;
char ch;
if( (k==n)&&(a[b[n] ][b[1]]==1) )
{ Num=Num+1;
gotoxy(1,1);
cout<<'\007'<<"num="<<Num;
getch();
}
else if ( (k<n)&&(k>0) )
{ if (k==n-1)
sss=b[2]+1;
else
sss=2;
for (i=sss;i<=n;i++)
if( (!visited[i])&&(a[b[k] ][i]==1) )
{ visited[i]=true;
b[k+1]=i;
cur_gnode_onoff(g,i);
put_elmn(ag,k+1,i,0);
cur_elmn_onoff(ag,k+1);
int q=getch();
if(q==27)
exit(0);
else
{ getcc(k+1,a);
visited[i]=false;
clear_GrpArr_elmn(ag,k+1);
cur_gnode_onoff(g,i);
}
}
}
}
main()
{ BB2 a;
for (i=1;i<=n;i++)
for (j=1;j<=n;j++)
a[i][j]=int (prime(i+j) ) ;
a[1][1]=0;
trans_arrbb2_graph(a,n,g);
for (i=1;i<=n;i++)
visited[i]=false;
create_grp_Arrbb(ag,1,1,true,b,"aaa",1,n);
initial_GrpArr(ag);
move_GrpArr_mid(ag,getmaxx()/2,30);
clear_GrpArr(ag);
b[1]=1;
put_elmn(ag,1,1,0);
cur_elmn_onoff(ag,1);
visited[1]=true;
cur_gnode_onoff(g,1);
getch();
window(1,1,80,2);
Num=0;
getcc(1,a);
getch();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -