思路:还是一道01背包,不过有了两个属性而已
/**
* 题目: 洛谷OJ:P1855 榨取kkksc03
* 题型: DP
**/
#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
const int maxn = 200+10;
int dp[maxn][maxn], t, m, n, M, T;
int main() {
/************input**************/
cin >> n >> M >> T;
/*******************************/
for(int k = 1; k <= n; k++) {
cin >> t >> m;
for(int i = T; i >= t; i--) {
for(int j = M; j >= m; j--) {
dp[i][j] = max(dp[i][j], dp[i-t][j-m]+1);
}
}
}
cout << dp[T][M] << endl;
return 0;
}