[JOYOI] 1124 花店橱窗
生活随笔
收集整理的這篇文章主要介紹了
[JOYOI] 1124 花店橱窗
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目限制
時(shí)間限制 內(nèi)存限制 評(píng)測(cè)方式 題目來(lái)源
1000ms 131072KiB 標(biāo)準(zhǔn)比較器 Local
題目背景xq和他的老婆xz最近開(kāi)了一家花店,他們準(zhǔn)備把店里最好看的花都擺在櫥窗里。但是他們有很多花瓶,每個(gè)花瓶都具有各自的特點(diǎn),因此,當(dāng)各個(gè)花瓶中放入不同的花束時(shí),會(huì)產(chǎn)生不同的美學(xué)效果。為了使櫥窗里的花擺放的最合適,他們得想個(gè)辦法安排每種花的擺放位置。可是因?yàn)閤q和xz每天都太忙,沒(méi)有時(shí)間設(shè)計(jì)櫥窗里花的擺法,所以他們想讓你幫他們求出花擺放的最大美觀程度和每種花所放的位置。題目描述每種花都有一個(gè)標(biāo)識(shí),假設(shè)杜鵑花的標(biāo)識(shí)數(shù)為1,秋海棠的標(biāo)識(shí)數(shù)為2,康乃馨的標(biāo)識(shí)數(shù)為3,所有的花束在放入花瓶時(shí)必須保持其標(biāo)識(shí)數(shù)的順序,即:杜鵑花必須放在秋海棠左邊的花瓶中,秋海棠必須放在康乃馨左邊的花瓶中。如果花瓶的數(shù)目大于花束的數(shù)目。則多余的花瓶必須空置,且每個(gè)花瓶中只能放一束花。每種花放在不同的瓶子里會(huì)產(chǎn)生不同的美觀程度,美觀程度可能是正數(shù)也可能是負(fù)數(shù)。上述例子中,花瓶與花束的不同搭配所具有的美觀程度,如下表所示:花 瓶1 2 3 4 51 (杜鵑花) 7 23 -5 -24 162 (秋海棠) 5 21 -4 10 233 (康乃馨) -21 5 -4 -20 20根據(jù)上表,杜鵑花放在花瓶2中,會(huì)顯得非常好看;但若放在花瓶4中則顯得十分難看。為取得最大美觀程度,你必須在保持花束順序的前提下,使花束的擺放取得最大的美學(xué)值,并求出每種花應(yīng)該擺放的花瓶的編號(hào)。輸入格式
第1行:兩個(gè)整數(shù)F和V,表示xq和xz一共有F種花,V個(gè)花瓶。(1<=F<=V<=100)
第2行到第F+1行:每行有V個(gè)數(shù),表示花擺放在不同花瓶里的美觀程度值value。(美觀程度和不超過(guò)maxint,美觀程度有正有負(fù)。)
輸出格式
輸出有兩行:第一行為輸出最大美觀程度和的值,第二行有F個(gè)數(shù)表示每朵花應(yīng)該擺放的花瓶的編號(hào)。提示
其實(shí)就是簡(jiǎn)單的DP,花店櫥窗問(wèn)題啦。
注意盡量靠前放啊!
樣例數(shù)據(jù)
輸入樣例 #1 輸出樣例 #1
3 5
7 23 -5 -24 16
5 21 -4 10 23
-21 5 -4 -20 20
53
2 4 5
簡(jiǎn)單的DP,枚舉上一個(gè)花瓶放置的位置,記錄路徑的DP確實(shí)第一次寫,好多小細(xì)節(jié)出問(wèn)題,還是得多寫寫。
//Stay foolish,stay hungry,stay young,stay simple #include<iostream> #include<stack> using namespace std;int n,m; int a[105][105]; int f[105][105]; int pre[105][105]; int ans=-(1<<28),mxid;void print(int id,int pos){if(id==0||pos==0) return;print(id-1,pre[id-1][pos]);cout<<pos<<" "; } int main(){cin>>n>>m;for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){cin>>a[i][j];f[i][j]=-(1<<28);}}for(int i=1;i<=n;i++){int tmp=0;for(int j=i;j<=m;j++){pre[i][j]=i-1;for(int k=i-1;k<j;k++){ // f[i][j]=max(f[i-1][k]+a[i][j],f[i][j]);if(f[i-1][k]+a[i][j]>f[i][j]){f[i][j]=f[i-1][k]+a[i][j];pre[i][j]=k;//}}}}for(int i=n;i<=m;i++) if(ans<f[n][i])ans=f[n][i],mxid=i;cout<<ans<<endl;print(n,pre[n][mxid]);cout<<mxid<<endl;return 0; }轉(zhuǎn)載于:https://www.cnblogs.com/ghostcai/p/9247453.html
總結(jié)
以上是生活随笔為你收集整理的[JOYOI] 1124 花店橱窗的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: ProxySQL Cluster 概述
- 下一篇: 值传递与引用传递