#42009: c++


dvbdarcyvolleyball@gmail.com (no love)

學校 : 新北市私立南山高級中學
編號 : 266888
來源 : [36.229.126.61]
最後登入時間 :
2024-10-22 22:00:21
e465. 置物櫃分配 -- 2018年10月APCS | From: [123.252.121.18] | 發表日期 : 2024-09-19 19:03

 借放

#include <bits/stdc++.h> //e465
using namespace std;

int main(){
  int m, s, n, sum = 0;
  cin >> m >> s >> n;
  int a[n];
  for(int i = 0;i < n;i++){
    cin >> a[i]; 
    sum += a[i];
  }
  int limit = m - s; //能保留越多越好
  vector<int> dp(200001, 0);
  for(int i = 0;i < n;i++){
    for(int j = limit;j >= a[i];j--){
      dp[j] = max(dp[j],dp[j-a[i]]+a[i]); //b184貨櫃問題倒過來
    }
  }
  cout << sum - dp[limit]; //全部-保留住的 20-(1+2+2)=15
}

 
ZeroJudge Forum