• bailian 2698


    #include<iostream>
    #include<cmath>
    #include<cstring>
    using namespace std;
    int a[100],flag=1,b[10][10];
    int f(int k,int j)
    { for(int i=0;i<k;i++)
    if(a[i]==j||abs(i-k)==abs(j-a[i])) return 0;
    return 1;
    }
    void DFS(int k)
    { if(k==8) 
    { cout<<"No. "<<flag++<<endl;
    for(int i=0;i<8;i++)
    b[i][a[i]-1]=1;
    for(int j=0;j<8;j++)
    { cout<<b[0][j];
    for(int i=1;i<8;i++)
    cout<<' '<<b[i][j];
    cout<<endl;
    }
    memset(b,0,sizeof(b));
    } 
    else
    { for(int i=1;i<=8;i++)
    if(f(k,i)) 
    {   a[k]=i; DFS(k+1);}
    }
    }
    int main()
    { DFS(0);
    return 0;
    }
    View Code
    #include<iostream>
    #include<cmath>
    #include<cstring>
    using namespace std;
    int a[100],flag=1,b[10][10];
    int f(int k,int j)
    { for(int i=0;i<k;i++)
    if(a[i]==j||abs(i-k)==abs(j-a[i])) return 0;
    return 1;
    }
    void DFS(int k)
    { if(k==8) 
    { cout<<"No. "<<flag++<<endl;
    for(int i=0;i<8;i++)
    b[i][a[i]-1]=1;
    for(int j=0;j<8;j++)
    { cout<<b[0][j];
    for(int i=1;i<8;i++)
    cout<<' '<<b[i][j];
    cout<<endl;
    }
    memset(b,0,sizeof(b));
    }
    else
    { for(int i=1;i<=8;i++)
    if(f(k,i)) 
    {   a[k]=i; DFS(k+1);}
    }
    }
    int main()
    { DFS(0);
    return 0;
    }
  • 相关阅读:
    Javascript DMO 编程艺术
    PHPExcel
    MYSQL
    AJAX全接触
    正则表达式
    常用知识
    PHP 常用函数
    thinkphp5 公共函数的使用与调用
    thinkphp 使用phpExcel 导入和导出
    php 判断是pc端还是移动端
  • 原文地址:https://www.cnblogs.com/2014acm/p/3888654.html
Copyright © 2020-2023  润新知