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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

bzoj千题计划197:bzoj4247: 挂饰

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

http://www.lydsy.com/JudgeOnline/problem.php?id=4247

?

先把掛飾按掛鉤數(shù)量從大到小排序

dp[i][j]前i個(gè)掛飾,剩下j個(gè)掛鉤的最大喜悅值

分掛和不掛轉(zhuǎn)移

?

#include<cstdio> #include<cstring> #include<iostream> #include<algorithm>using namespace std;#define N 2011int dp[N+1][N];struct node {int sum,val; }e[N];void read(int &x) {x=0; int f=1; char c=getchar();while(!isdigit(c)) { if(c=='-') f=-1; c=getchar(); }while(isdigit(c)) { x=x*10+c-'0'; c=getchar(); }x*=f; }bool cmp(node p,node q) {return p.sum>q.sum; }int main() {int n;read(n);for(int i=1;i<=n;++i){read(e[i].sum);read(e[i].val);}sort(e+1,e+n+1,cmp);memset(dp,-127,sizeof(dp));int inf=dp[0][0];dp[1][1]=0;for(int i=1;i<=n;++i)for(int j=0;j<=n;++j)if(dp[i][j]!=inf){dp[i+1][min(n,j-1+e[i].sum)]=max(dp[i+1][min(n,j-1+e[i].sum)],dp[i][j]+e[i].val);dp[i+1][j]=max(dp[i+1][j],dp[i][j]);}int ans=0;for(int i=0;i<=n;++i) ans=max(ans,dp[n+1][i]);cout<<ans; }

?

4247: 掛飾

Time Limit:?10 Sec??Memory Limit:?256 MB
Submit:?1253??Solved:?507
[Submit][Status][Discuss]

Description

JOI君有N個(gè)裝在手機(jī)上的掛飾,編號(hào)為1...N。 JOI君可以將其中的一些裝在手機(jī)上。 JOI君的掛飾有一些與眾不同——其中的一些掛飾附有可以掛其他掛件的掛鉤。每個(gè)掛件要么直接掛在手機(jī)上,要么掛在其他掛件的掛鉤上。直接掛在手機(jī)上的掛件最多有1個(gè)。 此外,每個(gè)掛件有一個(gè)安裝時(shí)會(huì)獲得的喜悅值,用一個(gè)整數(shù)來表示。如果JOI君很討厭某個(gè)掛飾,那么這個(gè)掛飾的喜悅值就是一個(gè)負(fù)數(shù)。 JOI君想要最大化所有掛飾的喜悅值之和。注意不必要將所有的掛鉤都掛上掛飾,而且一個(gè)都不掛也是可以的。

?

Input

第一行一個(gè)整數(shù)N,代表掛飾的個(gè)數(shù)。 接下來N行,第i行(1<=i<=N)有兩個(gè)空格分隔的整數(shù)Ai和Bi,表示掛飾i有Ai個(gè)掛鉤,安裝后會(huì)獲得Bi的喜悅值。?

?

Output

輸出一行一個(gè)整數(shù),表示手機(jī)上連接的掛飾總和的最大值

?

Sample Input

5
0 4
2 -2
1 -1
0 1
0 3

Sample Output

5

HINT

?

將掛飾2直接掛在手機(jī)上,然后將掛飾1和掛飾5分別掛在掛飾2的兩個(gè)掛鉤上,可以獲得最大喜悅值4-2+3=5。
1<=N<=2000
0<=Ai<=N(1<=i<=N)
-10^6<=Bi<=10^6(1<=i<=N)

?

?

Source

JOI 2013~2014 春季training合宿 競(jìng)技4 By PoPoQQQ

?

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

總結(jié)

以上是生活随笔為你收集整理的bzoj千题计划197:bzoj4247: 挂饰的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

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