整數被分割成乙個質數 C C

發布 教育 2024-07-10
5個回答
  1. 匿名使用者2024-01-30

    ps:**我之前做的另外乙個問題稍微修改了一下,具體演算法用的是背包的變形演算法。

    **:#include

    #include

    #include

    const int maxx = 8000;

    using namespace std;

    long opt[maxx];

    const int coin[5] = ;

    int prime[1000];

    void init():總共建立 160 個質量表 (1 1000)。

    int w=1;

    int vis = 0;

    prime[0] = 2;

    for(int i=3;i<=1000;i++)for(int j=2;j*j<=i;j++)if(i%j==0)

    if(!vis)

    prime[w++]= i;

    vis = 0;

    int find() 0-1 背包問題通過積累來解決。

    init();

    for(int n=10;;n++)

    memset(opt,0,sizeof(opt));

    opt[0] = 1;

    for(int i=0;i<160;i++)for(int j=prime[i];j<=n;j++)if(opt[j-prime[i]])

    opt[j]+=opt[j-prime[i]];

    if(opt[n]>=5000) return n;

    return 0;

    int main()

    init();

    cout

  2. 匿名使用者2024-01-29

    在 5,000 多種拆分方法中找到最小的數字。

    不太明白你在問什麼? 尋找號碼? 有5000種拆分方法。

  3. 匿名使用者2024-01-28

    1. 首先開啟它,建立乙個新的 VC 專案,並新增標頭檔案。

    2. 增加主功能,如下圖所示。

    3. 然後定義兩個變數 n 和 i,如下圖所示。

    4. 然後使用 scanf 為 n 分配乙個值,並使用 for 迴圈。

    5.然後使用while作為內迴圈,並使用printf列印i。

    6.最後使用if條件語句執行程式,如下圖所示,將正整數分解成乙個品質因數完成。

  4. 匿名使用者2024-01-27

    你不明白什麼。

  5. 匿名使用者2024-01-26

    貼在你身上:long long r1( int k, int m ) 另外,不要以為別人會給你乙個完整的程式,提高你程式設計能力的秘訣就是先程式設計再程式設計。

相關回答
8個回答2024-07-10

素數大多是陣列或指向陣列的指標,素數+i指向陣列的第i個元素,(primes + i)取第i個元素的值,相當於primes[i]。 >>>More

10個回答2024-07-10

#include

#include >>>More

6個回答2024-07-10

有了 for,do....while 迴圈語句!

例如,查詢從 0 到 100 的質數。 >>>More

11個回答2024-07-10

很簡單的問題,上面的兄弟給出的是正確的,但是純C用的