日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【无码专区12】子集和(背包dp)

發(fā)布時間:2023/12/3 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【无码专区12】子集和(背包dp) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

此題已自我實(shí)現(xiàn),但仍歸于無碼專區(qū)

本題在考場上就過了,所以難度并不高,發(fā)現(xiàn)性質(zhì)即可。

problem

nnn 個正整數(shù) a1,a2,...,ana_1,a_2,...,a_na1?,a2?,...,an?,他們的和為 mmm。你想對于其每一個子集 SSS,求出他們的和。

給定 2n2^n2n[0,m][0,m][0,m] 之間的和,其中數(shù)字 iii 出現(xiàn)了 bib_ibi? 次。

求還原 aaa,數(shù)據(jù)保證有唯一解。

n≤50,m≤10000,1s,128MBn\le 50,m\le 10000,1s,128MBn50,m10000,1s,128MB

my idea

首先就能知道 b0,bmb_0,b_mb0?,bm? 一定是 111

馬上就發(fā)現(xiàn)最小的 aia_iai? 是沒有能被其他數(shù)組合出來的情況的,因?yàn)樗麄內(nèi)钦龜?shù)!

所以最小的 bi≠0b_i\neq 0bi??=0iii,就意味著 aaa 中原來有 bib_ibi?iii

然后考慮第二小的 bj≠0b_j\neq 0bj??=0jjj,會注意到有可能 bib_ibi?iii 可能會組合出 jjj。

減去這些組合就是 aaa 中原本有 bj′b_j'bj?jjj。

發(fā)現(xiàn)這就是個背包 dpdpdp 的過程。

容量 mmm,但最多只會背包 nnn 次。

所以跑得很快。

solution

與我的想法相同。

每次找到子集中最小的元素,也就是最小的 bib_ibi? 不等于 000iii,然后從背包里刪去即可。

刪除就是可以理解成逆向執(zhí)行一下背包中加入元素 xxx 的操作,也就是從小到大,執(zhí)行 bi?=bi?xb_i-=b_{i-x}bi??=bi?x?

code

#include <bits/stdc++.h> using namespace std; #define maxn 55 #define maxm 10005 #define int long long int n, m, cnt; int b[maxm], a[maxn], f[maxm]; int c[maxn][maxn];signed main() {freopen( "subset.in", "r", stdin );freopen( "subset.out", "w", stdout );scanf( "%lld %lld", &n, &m );for( int i = 0;i <= n;i ++ ) {c[i][0] = c[i][i] = 1;for( int j = 1;j < i;j ++ )c[i][j] = c[i - 1][j - 1] + c[i - 1][j];}for( int i = 0;i <= m;i ++ ) scanf( "%lld", &b[i] );f[0] = 1;for( int i = 1;i <= m;i ++ ) {b[i] -= f[i];if( ! b[i] ) continue;for( int j = 1;j <= b[i];j ++ ) a[++ cnt] = i;for( int j = m;j;j -- ) {for( int k = 1;k <= b[i];k ++ )if( j < k * i ) break;else f[j] += f[j - k * i] * c[b[i]][k];}}for( int i = 1;i <= n;i ++ ) printf( "%lld ", a[i] );return 0; }

總結(jié)

以上是生活随笔為你收集整理的【无码专区12】子集和(背包dp)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 99精品福利 | 黄色特级一级片 | 国产无遮挡裸体免费视频 | 久久精品国产网红主播 | 欧美黑人性猛交xxxx | 在线观看欧美精品 | 先锋成人 | 免费av网站在线播放 | 男生操女生免费网站 | 免费精品| 亚洲天堂av免费在线观看 | 久久久国产亚洲 | 午夜精品久久久久久毛片 | 亚洲欧美日韩一区二区三区四区 | caoporn国产 | 国产一级爽片 | 好吊色青青草 | 欧美日韩高清丝袜 | 欧美一区二区三区系列电影 | 亚洲影院在线 | 深夜福利视频在线 | 中国一级免费毛片 | 欧美永久精品 | 免费成年人视频 | 亚洲经典一区二区 | 午夜精品福利一区二区三区蜜桃 | 在线国产三级 | 日本妈妈3| xxxx国产片| 婷婷丁香综合网 | 操模特| 成人久久精品 | 久久久久久久久免费视频 | 日韩中文字幕在线不卡 | 欧美人与性动交g欧美精器 国产在线视频91 | 美女伦理水蜜桃4 | 高清av免费观看 | 美少妇av | 久久久久18 | 久久人妻免费视频 | 一级片a级片 | 欧美涩涩视频 | 在线天堂中文字幕 | 精品久久久久久久久久久 | 国产中出 | 天天射日日| 性高潮久久久久久久久久 | 美女毛片在线 | 亚洲婷婷免费 | 男人猛进女人爽的大叫 | 孕妇丨91丨九色 | 国产福利免费视频 | 色污网站| 欧美亚洲大片 | 伊人久久艹 | 超碰.com| 深夜福利亚洲 | 女人被男人操 | 韩国三级中文字幕 | 波多野结衣在线免费视频 | 亚洲毛片a | 超碰在线公开 | 久久午夜鲁丝片 | 少妇人妻一区二区三区 | www国产亚洲精品久久麻豆 | 日韩中文字幕有码 | 我爱52av | 牛牛影视免费观看 | 一区二区亚洲精品 | 少妇特黄a一区二区三区 | 成人网在线观看 | 黄色一级影片 | 精品一区免费观看 | 国产在线观看一区 | 久久爰| 欧美日韩一区二区区 | 美女网站免费观看视频 | 久久精品国产免费看久久精品 | 无套内谢的新婚少妇国语播放 | 秋霞在线视频观看 | 无遮挡在线观看 | 亚洲色诱 | 神马影院一区二区三区 | av在线首页 | 色婷视频 | 麻豆精品国产传媒av | 久久久久国产精品一区 | 免费观看日本 | 亚洲一区欧美激情 | 亚洲精品中文字幕在线 | 在线一区二区三区四区五区 | 中国免费观看的视频 | 欧美一区二区不卡视频 | 日韩精品中文字幕在线观看 | 少妇免费毛片久久久久久久久 | 中文字幕一本 | 四虎影视库 | 国产精品不卡av | 国产精品福利在线播放 |