日韩性视频-久久久蜜桃-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)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产精品亚洲一区 | 超碰凹凸 | 男人天堂色| 免费在线成人av | 狠狠艹狠狠干 | 欧美 在线| 亚洲精品ww | 欧美日韩不卡视频 | 夜夜夜夜夜操 | 亚洲五月婷 | 成人高清网站 | 99爱在线视频 | 欧美a∨| 国产精品中文在线 | 丝袜美腿一区二区三区 | 国产精品美女在线 | 黄网在线观看视频 | 亲子乱aⅴ一区二区三区 | 在线免费看mv的网站入口 | 有码视频在线观看 | 精品一区在线视频 | 欧美色老头old∨ideo | 国产精品一区二区无线 | 天天av天天爽 | 少妇太紧太爽又黄又硬又爽 | 永久免费无码av网站在线观看 | 日韩网红少妇无码视频香港 | gogo亚洲国模私拍人体 | 东京干手机福利视频 | 日韩亚洲欧美中文字幕 | 亚洲羞羞| 手机福利视频 | www.亚洲天堂.com | 毛片无码免费无码播放 | 精品一区二区久久久久久按摩 | 年代下乡啪啪h文 | 国产最新在线 | 国产精品极品 | av网站免费大全 | 亚洲福利在线视频 | 亚洲国产精品久久AV | 成人性生交大免费看 | 十大污视频 | 国产欧美日韩91 | 中文人妻av久久人妻18 | www.欧美亚洲 | 成人精品国产免费网站 | 黄色aa网站 | 久久久久久久久久久久Av | 第九色激情 | 中文字幕一区二区三区波野结 | 看片国产 | 亚洲欧美专区 | 九九九网站| 少妇精品高潮欲妇又嫩中文字幕 | 男人日女人网站 | 产乳奶汁h文1v1 | 欧美一二三级 | 日本www高清视频 | 一级美女视频 | 九九精品九九 | 日本欧美成人 | 欧美激情在线播放 | 国产精品日韩电影 | 日p视频在线观看 | 殴美一级特黄aaaaaa | 国产精品一区二区欧美 | 人乳videos巨大吃奶 | 女人黄色片 | 69xav| 狠狠撸狠狠干 | 亚洲AV无码乱码国产精品牛牛 | 激情小说图片视频 | 18成人在线 | 亚洲国产精品久久久久爰性色 | 中文av一区二区三区 | 中文字幕亚洲乱码熟女一区二区 | 成人涩涩网 | xxxxx在线视频 | 日韩av毛片在线观看 | www.youjizz.com久久| 日本激情影院 | 九九在线精品 | 亚州av免费 | 欧美高清视频一区 | 久久久久亚洲av无码专区 | 无套内谢大学处破女www小说 | 国产女人18毛片水18精品 | 天天插日日干 | 亚洲色图图片 | 国产九九九精品 | 草1024榴社区成人 | 国内精品久久久久久久久 | 亚洲欧美激情在线观看 | 色爽| 美女黄色大片 | 国产主播在线播放 | 琪琪原网址 | 侵犯女教师一区二区三区 |