#include #include #include using namespace std;

int main() { int m, n; cin >> m >> n; int k; cin >> k; vector<vector> cylinders(k, vector(3)); for (int i = 0; i < k; ++i) { cin >> cylinders[i][0] >> cylinders[i][1] >> cylinders[i][2]; } vector<vector> dp(m + 1, vector(n + 1, INT_MAX)); dp[0][0] = 0;

for (const auto &cyl : cylinders) {
    int a = cyl[0], b = cyl[1], c = cyl[2];
    for (int i = m; i >= 0; --i) {
        for (int j = n; j >= 0; --j) {
            if (dp[i][j] != INT_MAX) {
                int new_i = min(i + a, m);
                int new_j = min(j + b, n);
                if (dp[new_i][new_j] > dp[i][j] + c) {
                    dp[new_i][new_j] = dp[i][j] + c;
                }
            }
        }
    }
}

cout << dp[m][n] << endl;
return 0;

}

包对

0 条评论

目前还没有评论...