poj2229 完全揹包 規律Orz

2022-03-01 01:46:38 字數 1285 閱讀 6809

挑戰dp

題意:

被組合數只能是2的整數冪,然後給出乙個數問有多少種組合(mod1e10);

思路:

完全揹包做啊…還是蠻簡單的…(這裡取膜要改成加法,省時間…)

dp[i]代表對於j的方案數

貼一發吧…

#include 

#include

#include

#include

#include

#include

#include

#include

#include

#include

using

namespace

std;

#define ll long long

#define inf 0x3f3f3f3f

const

double pi = acos(-1.0);

const

int mod = 1e9;

const

int n =1e6+10;

int dp[n];

void init()

}}int main()

然後看了discuss的那個blog(我還是很少點這種推送的blog,看完還是蠻搞笑的。。。)

具體也就不講了…能這樣玩也是厲害呀…)乙個數乘2的情況和那個數的情況相同,誰說不是呢。弱太菜玩不出…

挫code…………

#include 

#include

#include

#include

#include

#include

#include

#include

#include

#include

using

namespace

std;

#define ll long long

#define inf 0x3f3f3f3f

const

double pi = acos(-1.0);

const ll mod = 1e9;

const

int n =1e6+10;

ll dp[n];

int main()

int n;

while(~scanf("%d",&n))

printf("%d\n",dp[n]);

return

0;}

POJ 2229 Sumsets(遞推,找規律)

構造,遞推,因為劃分是合併的逆過程,考慮怎麼合併。先把n展開成全部為n個1 然後合併,因為和順序無關,所以只和出現次數有關 情況有點多並且為了避免重複,分類,c i 表示序列中最大的數為2 i時的方案數 樹形表示合併 uva 10562 undraw the trees的表示方法。7 2 0 7表示...

POJ 1384 完全揹包

題意 給定乙個重量,和各種錢幣的重量,求可以滿足給定重量的錢幣組合中的最小組合。如果存在組合就求出最小值。轉移方程 1 f j 和 f j w i 都可達 則 f j min 2 f j 不可達 但 f j w i 可達 則 f j f j w i p i 3 其餘情況 則不作處理 程式 inclu...

poj 1384完全揹包

題意 給出豬罐子的空質量和滿質量,和n個硬幣的價值和質量,求豬罐子剛好塞滿的的最小價值。思路 選擇硬幣,完全揹包問題,塞滿 初始化為無窮,求最小價值,min。include include includeusing namespace std define inf 10000000 int n,su...