HDU AREYOUBUSY 未完成

#include <bits/stdc++.h>
using namespace std;
const int INF = 0x7fffff;
const int N = 1000;
int dp[N],n,m,w,v,s,T,command;
int main() {
    ios::sync_with_stdio(false);
    cin >> n >> T;
    for (int ii = 1; ii <= n; ii++) {
        cin >> m >> command;
        if (command == 1) s = 1;
        else if (command == 2) s = INF;
        for (int ik = 1; ik <= m; ik++) {
            cin >> v >> w;
            if (command == 0) {
                s = INF;
                for (int i = 1; i <= m; i++)
                    for (int j = m; j >= 0; j--) {
                        for (int k = 2; k <= s && k * w <= j; k++) {
                            dp[j] = max(dp[j] + (k - 1) * v, dp[j - k * w] + k * v);
                        }
                    }

            } else {
                for (int i = 1; i <= m; i++)
                    for (int j = m; j >= 0; j--) {
                        for (int k = 1; k <= s && k * w <= j; k++) {
                            dp[j] = max(dp[j], dp[j - k * w] + k * v);
                        }
                    }
            }
        }
    }
    cout << dp[m] << endl;
    return 0;
}

 

posted @ 2021-04-25 22:31  limited_Infinite  阅读(49)  评论(0编辑  收藏  举报
// //返回顶部 //返回顶部按钮