#include<stdio.h>
#include<string.h>
int cnt=0;
int bool[531443];
void dfs(int dep,int lc,int a[]){
if(dep==6){
if(bool[a[1]]==0) {cnt++;bool[a[1]]=1;return;}
else return;
}
int i,j;
int aa[7];
for(i=lc+1;i<=7-dep;i++){
aa[i]=a[i+1];
}
for(i=1;i<=lc;i++) aa[i]=a[i];
for(i=1;i<=6-dep;i++){
int temp=aa[i];
aa[i]=aa[i]+aa[i+1];
dfs(dep+1,i,aa);
aa[i]=temp;
aa[i]=aa[i]*aa[i+1];
dfs(dep+1,i,aa);
aa[i]=temp;
}
}
int main()
{
int a[7];
int n;
int i;
for(i=1;i<=6;i++){
scanf("%d",&a[i]);
}
dfs(1,7,a);
printf("%d",cnt);
}```
c语言积分赛第五题(递归)
最新推荐文章于 2022-07-31 18:10:41 发布