zoukankan      html  css  js  c++  java
  • 第五第六课------递推+记忆话搜索+搜索八皇后(思想是做梦)+各种剪枝思想

    搜索是一个漫长的过程贯彻整个oi;

    八皇后-------

    #include <bits/stdc++.h>
    #define inf 0x7f
    using namespace std;
    int n,ans,a[inf],b[inf],c[inf],d[inf];
    void print(){
     ++ans;
     if(ans<=3){
     for(int i=1;i<=n;i++) cout<<d[i]<<" ";
     cout<<endl;
     }

    void s(int k){//行
    for(int i=1;i<=n;i++){//枚举每一列
    if(a[i]==0&&b[k-i+n]==0&&c[i+k]==0){
      d[k]=i;
      a[i]=1;
     b[k-i+n]=1;
     c[i+k]=1;
     if(i==n) print();
     else s(k+1);
     b[k-i+n]=0;
     c[i+k]=0;
     a[i]=0;
    }
     }
     ;
    }
     
    int main(){
    cin>>n;
    s(1);
    cout<<ans;
    return 0;
    }
    上述代码是有问题的,目前还未找出;
    递推讲了基本的
    卡特兰数是 an=an-1+2(n-1),具体请见课件
    第二类斯特林数  】n个有区别的球放到m个相同的盒子中,要求无一空 盒,其不同的方案数用S(n,m)表示,称为第二类Stirling数。  S2(n,m)=mS2(n-1,m)+S2(n-1,m-1)   (n>1,m1)要么将n-1个球放进所有盒子里其中最后一个球可以放进任意一个,另外一个就是只把一个球放在盒子里;
    斐波拉契 f(n)=f(n-1)+f(n-1)//请参照兔子定理
    最重要的是要自己根据前面与后面的关系(就是前面是怎么从后面来的)
    可行性剪纸和最优性剪纸请自学;
    原绿色洒满天际
  • 相关阅读:
    工单组件增强
    一些BAPI
    实例程序
    使用BAPI一定要提交和回滚(错误)
    动态内表值导出为TXT文件
    网页常用功能
    Code Complete
    Typescript 解构 、展开
    Typescript变量声明
    TypeScript基础数据类型
  • 原文地址:https://www.cnblogs.com/sc-pyt-2021-theworld/p/10113655.html
Copyright © 2011-2022 走看看