zoukankan      html  css  js  c++  java
  • 卡特兰数总结

    最近做了几道卡特兰数的题,发现单独考卡特兰数的题貌似不多,卡特兰一般结合一些东西出现

    1.高精(你要会python就当我没说)当没模数时要用到

    2.质因数分解:(重点)

    1 for(int i=2;i<=n;++i)
    2 {
    3     if(!v[i])
    4     for(int j=2;j*i<=nn;++j)v[i*j]=1,fr[i*j]=i;
    5 }
    常用代码

    在筛素数时瞎处理一下。。。

     1 --sum[n+1];
     2     for(int i=nn;i>n;--i)
     3     {
     4         ++sum[i];
     5         if(!v[i])
     6         {
     7             q.pb(i);
     8         }
     9         else
    10         {
    11             sum[fr[i]]+=sum[i];
    12             sum[i/fr[i]]+=sum[i];
    13         }
    14     }
    15     for(int i=n;i>=2;--i)
    16     {
    17         --sum[i];
    18         if(!v[i])
    19         {
    20             q.pb(i);
    21         }
    22         else
    23         {
    24             sum[fr[i]]+=sum[i];
    25             sum[i/fr[i]]+=sum[i];
    26         }
    27     }
    求卡特兰数

    一层一层地下传指数

    讲道理,这样处理出来后再加一些快速幂或高精乘之类的东西就可以求出卡特兰数。。

  • 相关阅读:
    阅读进度条的实现
    获取radio选中的值
    Vue的学习(六)
    Vue的学习(三)
    C#委托详解
    C#泛型和非泛型
    C#装箱和拆箱
    C#内存泄漏的事例
    C#windows服务开发(一)
    C#windows服务开发
  • 原文地址:https://www.cnblogs.com/loadingkkk/p/11252477.html
Copyright © 2011-2022 走看看