最大約數和

2021-09-25 13:33:20 字數 666 閱讀 5592

題目:

題目描述

選取和不超過s的若干個不同的正整數,使得所有數的約數(不含它本身)之和最大。

輸入格式

輸入乙個正整數s。

輸出格式

輸出最大的約數之和。

輸入輸出樣例

輸入 #1

輸出 #1

說明/提示

樣例說明

取數字4和6,可以得到最大值(1+2)+(1+2+3)=9。

資料規模

s<=1000

思路:把它當做01揹包來做就行了。

s為物品個數和揹包容量,c[i]為1至s中數的約數之和,w[i]為第i個數。

抄**有害身心,請不要抄襲**!!!

#include

using

namespace std;

int dp[

1010][

1010

],s,a[

1010

],w[

1010];

voidf(

)}a[i]

=cnt;}}

intmain()

else}}

cout<[s];

return0;

}

end

DP 最大約數和

選取和不超過s的若干個不同的正整數,使得所有數的約數 不含它本身 之和最大。樣例輸入11樣例輸出9算出每個數的約數和,然後dp a i a i a i 代表第 i第i 第i個數的最大約數和 因為我怕在主程式裡算約數和會超時,所以我直接打表 以下是打錶用的 注意這裡是到2000的 include in...

最大約數個數

最大約數個數 可以乙個乙個求 資料過大時必超時 根據約數和定理 對於乙個大於1正整數n可以分解質因數 n p1a1 p2a2 p3a3 pkak,則由約數個數定理可知n的正約數有 a 1 a 1 a 1 ak 1 個,pragma ggc optimize 2 include bits stdc h...

P1734 最大約數和

選取和不超過s的若干個不同的正整數,使得所有數的約數 不含它本身 之和最大。輸入乙個正整數s。輸出最大的約數之和。輸入 1複製 11輸出 1複製 9樣例說明 取數字4和6,可以得到最大值 1 2 1 2 3 9。資料規模 s 1000 題目分析 我們可以預先處理出來所有數的約數的和,而這個和對應著我...