P1855 榨取kkksc03 题解

    技术2022-07-14  77

    目录

    题目详情题面分析代码

    题目详情

    题面传送门

    ps:kkk自己也说实现愿望是假的

    题面分析

    洛谷的运营组决定,如果一名 O I e r OIer OIer 向他的教练推荐洛谷,并能够成功的使用(成功使用的定义是:该团队有 2020 2020 2020个或以上的成员,上传 1010 1010 1010 道以上的私有题目,布置过一次作业并成功举办过一次公开比赛),那么他可以浪费掉 k k k s c 03 kkksc03 kkksc03 的一些时间的同时消耗掉 k k k s c 03 kkksc03 kkksc03 的一些金钱以满足自己的一个愿望。 k k k s c 03 kkksc03 kkksc03 的时间和金钱是有限的,所以他很难满足所有同学的愿望。所以他想知道在自己的能力范围内,最多可以完成多少同学的愿望?

    特别明显,是一个01背包板子题 废话不多说,上代码。

    代码

    #include <bits/stdc++.h>//万能头文件 using namespace std; int n,m,T,f[1010][1010],a[1010],b[1010];//f用来进行dp存储结果,a、b分别用来表示第i个愿望所需要的金钱和时间。 int main(){ scanf("%d%d%d",&n,&m,&T); for(int i=1;i<=n;i++){ scanf("%d%d",&a[i],&b[i]); for(int j=m;j>=a[i];j--)//01背包运算 for(int k=T;k>=b[i];k--)//注意从T开始 f[j][k]=max(f[j][k],f[j-a[i]][k-b[i]]+1);//dp } printf("%d",f[m][T]); return 0; }
    Processed: 0.025, SQL: 9