精品偷拍一区二区三区,亚洲精品永久 码,亚洲综合日韩精品欧美国产,亚洲国产日韩a在线亚洲

  • <center id="usuqs"></center>
  • 
    
  • 一道算法題,用什么算法可以求解,

    一道算法題,用什么算法可以求解,
    給出一個正n邊形,頂點有編號1-n,要求畫出k條對角線,這k條對角線在多邊形內部沒有交點(只可能相交在頂點處),問有多少種方法.輸入多邊形邊數(shù)n和要畫的對角線條數(shù)k.4
    其他人氣:820 ℃時間:2020-05-20 21:51:37
    優(yōu)質解答
    #include <stdio.h>

    #define P 1000003
    #define LL long long
    LL FACT[P+1];

    // 初始化FACT數(shù)組,FACT[i]=i!%p
    void InitFact(LL p) {
    int i;
        FACT[0] = 1;  
        for (i=1; i<=p; i++) 
    FACT[i] = (FACT[i-1] * i) % p;  
    }
    // 返回 a^b%p
    LL PowerMod(LL a, LL b, LL p)
    {
    LL ret = 1;
        LL tmp = a;
    while (b)
    {  
            if (b & 1) 
    ret = (ret * tmp) % p;  
            tmp = (tmp * tmp) % p;  
            b >>= 1;  
        }  
        return ret;  
    }
    // Lucas(n,m,p) = (Lucas(n/p,m/p) * C(n%p,m%p)) % p;
    //*
    // 返回 C(n,m)%p
    LL C(LL n, LL m, LL p)  
    {  
        if(n<m)  
            return 0;
        return FACT[n] * PowerMod(FACT[m]*FACT[n-m]%p,p-2,p) % p;  

    LL Lucas(LL n, LL m, LL p)  
    {  
        if(m==0)  
            return 1;  
        return (Lucas(n/p, m/p, p) * C(n%p, m%p , p))%p;  
    }
    /*/
    LL Lucas(LL n, LL m, LL p) {  
        LL ret = 1;
    LL nn, mm;
        while (n && m) {  
            nn = n%p;
    mm = m%p;  
            if (nn < mm) 
    return 0;  
            ret = (ret*FACT[nn] * PowerMod(FACT[mm]*FACT[nn-mm]%p, p-2, p) ) % p;  
            n /= p;  
            m /= p;  
        }  
        return ret;  
    }
    //*/

    int diagon (int n,int k)
    {
    LL result;
        InitFact(P);
        result = Lucas(n-3, k, P);
    result = result*Lucas(n-1+k, k+1, P);
    result = result * PowerMod((n-1)%P, P-2, P) %P;
    return result;
    }

    intmain()
    {
    printf("%d\n",diagon(4, 1));
    printf("%d\n",diagon(5, 1));
    printf("%d\n",diagon(5, 2));
    printf("%d\n",diagon(6, 2));
    printf("%d\n",diagon(1000000000, 1000003));
    }


    運行結果:

    2

    5

    5

    21

    999000


    你是在英雄會上看到這個題目的嗎?

    大牛說這題很簡單,可是費了我好大的力氣才做出來

    我來回答
    類似推薦
    請使用1024x768 IE6.0或更高版本瀏覽器瀏覽本站點,以保證最佳閱讀效果。本頁提供作業(yè)小助手,一起搜作業(yè)以及作業(yè)好幫手最新版!
    版權所有 CopyRight © 2012-2024 作業(yè)小助手 All Rights Reserved. 手機版