卬高杯
提出id | 提出時刻 | ユーザー名 | 問題 | 言語 | 判定状況 | 判定 | 実行時間 |
---|---|---|---|---|---|---|---|
114788 | 2023-10-24 08:07:51 | hiikunZ | G | cpp | 16/16 | AC | 43 |
#include <bits/stdc++.h>
using namespace std;
using ll = long long int;
const ll MAX = 1e18;
int main(){
ll N,M;
cin >> N >> M;
vector<ll> DP(M,-MAX),X(N),Y(N);
DP[0] = 0;
for(ll i = 0;i < N;i++) cin >> X[i];
for(ll i = 0;i < N;i++) cin >> Y[i];
for(ll i = 0;i < N;i++){
for(ll j = M - Y[i] - 1;j >= 0;j--){
DP[j + Y[i]] = max(DP[j + Y[i]],DP[j] + X[i]);
}
}
ll ans = 0;
for(ll i = 0;i < M;i++) ans = max(ans,DP[i]);
cout << ans << endl;
}
sample1.txt AC 2 case1.txt AC 2 case2.txt AC 43 case3.txt AC 2 case4.txt AC 8 case5.txt AC 9 case6.txt AC 20 case7.txt AC 27 case8.txt AC 15 case9.txt AC 4 case10.txt AC 24 case11.txt AC 23 case12.txt AC 22 case13.txt AC 14 case14.txt AC 31 case15.txt AC 6 43 AC43 AC