uva 10465 Homer Simpson (完全背包)

uva 10465 Homer Simpson题目大意:有两种汉堡,给出吃每种汉堡的时间,,以及总时间。求出在充分利用时间的前提下,能吃的最多的汉堡数量。当无法利用所有时间时,再在汉堡数量后面输出剩余的时间。解题思路:完全背包。ll;;ll dp[20005];int main() {int num[2], sum;while (scanf(“%d %d %d”, &num[0], &num[1], &sum) == 3) {memset(dp, 0, sizeof(dp));dp[0] = 1;for (int i = 0; i < 2; i++) {for (int j = 0; j <= sum; j++) {if (dp[j] && dp[j + num[i]] < dp[j] + 1) {dp[j + num[i]] = dp[j] + 1;}}}int cnt = 0;while (!dp[sum]) {sum–;cnt++;}printf(“%lld”, dp[sum] – 1);if (cnt) printf(” %d”, cnt);printf(“\n”);}return 0;}

要愈合不能,要忘却不能,要再次拥抱,却鼓不起足够的勇气,

uva 10465 Homer Simpson (完全背包)

相关文章:

你感兴趣的文章:

标签云: