题目描述

洛谷的运营组决定,如果一名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题,真的良心啊,完全背包模板题。我觉得黄体都难了,应该是橙题吧。。。

CODE:

 #include<cmath>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
const int M=;
int n,m,t,ans;
int a[M],b[M];
int f[M][M];
inline int get(){
char c=getchar();
int res=;
while (c<''||c>'') c=getchar();
while (c>=''&&c<=''){
res=(res<<)+(res<<)+c-'';
c=getchar();
}
return res;
}
int main() {
n=get(),m=get(),t=get();
for (int i=;i<=n;i++) a[i]=get(),b[i]=get();
for (int i=;i<=n;i++){
for (int j=m;j>=a[i];j--){
for (int k=t;k>=b[i];k--){
f[j][k]=max(f[j][k],f[j-a[i]][k-b[i]]+);
}
}
}
cout<<f[m][t]<<endl;
//system("pause");
return ;
}

最新文章

  1. iOS面试题总结 (二)
  2. Blog 公用部分结构与class定义
  3. React Native 使用问题记录
  4. Hadoop2.6.0伪分布环境搭建
  5. python 任意新闻正文提取
  6. Python命名规范
  7. aspose.Cells 导出Excel
  8. JS中关于JS文件的引用以及问题
  9. 僵尸进程 图解 分布式 LINUX内核
  10. delphi通过OLE对word进行单元格合并操作
  11. android之自定义ViewGroup和自动换行的布局的实现
  12. CSS初始化-KISSY CSS Reset 1.0
  13. JPA 系列教程1-环境搭建
  14. Java 多线程之线程池的使用
  15. Window Server配置Flask
  16. python基础——dict和set(字典和集合)
  17. 单端测序(Single-read)和双端测序(Paired-end和Mate-pair)的关系
  18. Kubernetes-Host网络模式应用
  19. gdb调试coredump文件
  20. 关于WSDL文件

热门文章

  1. Codeforces gym102222 B.Rolling The Polygon 凸包/余弦定理
  2. opencv打开摄像头并新建窗口显示
  3. linux安装jrockit 1.6
  4. HDU 6656 Kejin Player (期望DP 逆元)
  5. jquery $用法
  6. Feign 系列(04)Contract 源码解析
  7. CentOS 7 用 yum 安装 Nginx
  8. The J2EE Architecture
  9. Android studio的ERROR: Unable to resolve dependency for 错误
  10. python 2 学习历程(一)