1. 程式人生 > >luogu P1855 榨取kkksc03

luogu P1855 榨取kkksc03

效率 搭建 參加 int 學校 能夠 輸入 cnblogs max

題目描述

以下皆為真實的故事。

洛谷2的團隊功能是其他任何oj和工具難以達到的。借助洛谷強大的服務器資源,任何學校都可以在洛谷上零成本的搭建oj並高效率的完成訓練計劃。

為什麽說是搭建oj呢?為什麽高效呢?

技術分享

因為,你可以上傳私有題目,團隊外別人是無法看到的。我們還能幫你們評測!

你可以創建作業,給組員布置任務,查看組員的完成情況,還可以點評任意一份代碼!

你可以創建比賽!既可以是oi賽制還可以是acm賽制!既可以是團隊內部的私有比賽,也可以公開賽,甚至可以指定誰可以參加比賽。這樣,搞“x校聯賽”最合適不過了。洛谷憑借這個功能,希望能夠提供公開及私有比賽的另外一個平臺。

技術分享

值得說明的是,本次比賽就是采用團隊私有題目+邀請比賽的機制。

洛谷的運營組決定,如果一名oier向他的教練推薦洛谷,並能夠成功的使用(成功使用的定義是:該團隊有20個或以上的成員,上傳10道以上的私有題目,布置過一次作業並成功舉辦過一次公開比賽),那麽他可以浪費掉kkksc03的一些時間的同時消耗掉kkksc03的一些金錢以滿足自己的一個願望。

Kkksc03的時間和金錢是有限的,所以他很難滿足所有同學的願望。所以他想知道在自己的能力範圍內,最多可以完成多少同學的願望?

輸入輸出格式

輸入格式:

第一行,n M T,表示一共有n(n<=100)個願望,kkksc03 的手上還剩M(M<=200)元,他的暑假有T(T<=200)分鐘時間。

第2~n+1行 mi,ti 表示第i個願望所需要的時間和金錢。

輸出格式:

一行,一個數,表示kkksc03最多可以實現願望的個數。

輸入輸出樣例

輸入樣例#1:
6 10 10
1 1
2 3 
3 2
2 5
5 2
4 3
輸出樣例#1:
4

說明

提示 第1,2,3,6個

dp 簡單背包

#include<cstdio>

int n,m,t;
int miku[110],v[110];
int dp[210][210];

int max(int x,int y)
{
    
if(x>y)return x; else return y; } int main() { scanf("%d%d%d",&n,&m,&t); for(int i=1;i<=n;i++) scanf("%d%d",miku+i,v+i); dp[0][0]=0; for(int i=1;i<=n;i++) for(int j=t;j>=miku[i];j--) for(int k=m;k>=v[i];k--) dp[j][k]=max(dp[j][k],dp[j-miku[i]][k-v[i]]+1); printf("%d",dp[t][m]); return 0; }

luogu P1855 榨取kkksc03