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

歡迎訪問(wèn) 生活随笔!

生活随笔

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

编程问答

橱窗布置

發(fā)布時(shí)間:2025/5/22 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 橱窗布置 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

【題目鏈接】

    http://ybt.ssoier.cn:8088/problem_show.php?pid=1279

【算法】

    狀態(tài)轉(zhuǎn)移方程和復(fù)制書稿幾乎一樣,注意dp時(shí)候狀態(tài)的范圍保證每束花都有花瓶插。我是用rec記錄的,當(dāng)然也可以逆著推出位置。

【代碼】

1 #include <bits/stdc++.h> 2 using namespace std; 3 int f,v,i,j,k,first=1; 4 int a[110][110],dp[110][110],rec[110][110]; 5 int main() 6 { 7 scanf("%d%d",&f,&v); 8 for(i=1;i<=f;i++) 9 for(j=1;j<=v;j++) 10 scanf("%d",&a[i][j]); 11 rec[1][1]=1,dp[1][1]=a[1][1]; 12 for(i=2;i<=v-(f-1);i++) if(dp[1][i-1]<a[1][i]) rec[1][i]=i,dp[1][i]=a[1][i]; else rec[1][i]=rec[1][i-1],dp[1][i]=dp[1][i-1]; 13 for(i=2;i<=f;i++) 14 for(j=i;j<=v-f+i;j++) 15 for(k=i-1;k<=j-1;k++) { 16 int cur=dp[i-1][k]+a[i][k+1]; 17 if(cur>dp[i][j]) rec[i][j]=k+1,dp[i][j]=cur; 18 } 19 printf("%d\n",dp[f][v]); 20 stack<int> s; 21 for(i=f,j=v;i;i--) { 22 s.push(rec[i][j]); 23 j=rec[i][j]-1; 24 } 25 while(!s.empty()) { 26 if(first) printf("%d",s.top()),first=0; 27 else printf(" %d",s.top()); 28 s.pop(); 29 } 30 return 0; 31 }

?

轉(zhuǎn)載于:https://www.cnblogs.com/Willendless/p/9388034.html

總結(jié)

以上是生活随笔為你收集整理的橱窗布置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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