國立政治大學

#新手 #C語言

2020年11月23日 20:53
給定一連串數字和一個上限 求這串數字任幾個的和小於這個上限的最大值 我現在除了想到暴力寫一堆for迴圈 把所有可能的和寫出來 #include <stdio.h> int main(void){ int n,k,coin; int arr[1000]={0}; scanf("%d%d", &n,&k); for(int i=0;i<n-1;i++){ scanf("%d", &arr[i]); } } 然後底下一堆for迴圈 想不出更好的解法了 想問一下有沒有其他想法
1
回應 2
文章資訊
Logo
每週有 28 則貼文
共 2 則留言
國立交通大學
0 / 1 knapsack problem 透過 dynamic programming 的方式由小到大找出每個不同 limit 的最佳解
根據你的內文 可以把上限的值想成是背包的 "容量" 一連串的數字本身就代表 "重量" 與 "價值"