搭积木蓝桥杯

    xiaoxiao2021-03-25  93

    #include<stdio.h> //答案 768 int m[11]; int v[10]={0}; int c=0; void check()    {  if((m[1]<m[2]&&m[1]<m[3])&&(m[2]<m[4]&m[2]<m[5]&&m[3]<m[5]&m[3]<m[6])&&(m[4]<m[7]&&m[4]<m[8])&&m[5]<m[8]&&m[5]<m[9]&&m[6]<m[9]&&m[6]<m[10] )   {   printf("%d\n",m[1]);   printf("%d%d\n",m[2],m[3]);   printf("%d%d%d\n",m[4],m[5],m[6]);   printf("%d%d%d%d\n",m[7],m[8],m[9],m[10]);   c++;   }      } void dfs(int n) {  if(n==11)  {   check();   return ;  }  for(int i=0;i<=9;i++)   {    if(v[i]==0)    {     v[i]=1;     m[n]=i;     dfs(n+1);      v[i]=0;    }   } } main() {dfs(1); printf("%d",c); return 0; }
    转载请注明原文地址: https://ju.6miu.com/read-35106.html

    最新回复(0)