제출 #1144239

#제출 시각아이디문제언어결과실행 시간메모리
1144239MunkhturErdenebatKnapsack (NOI18_knapsack)C++20
0 / 100
1 ms832 KiB
#include<bits/stdc++.h>
#include<string.h>
#include <algorithm>
#include <stdlib.h>
 #define ll long long
using namespace std;
    ll a,b,c,d,e,f,m,i,j,n,h,g,l,r,ka,p,q[200005],t[4][100005];
    map<ll,ll> maa,mii,mee;
    vector<ll> vas[25],vis,vii;
    pair<ll,ll> fgh,k[200000];
    ll dp[101][100001];
int main(){
    cin>>a>>b;
    for(i=0 ; i<a ; i++){
        cin>>k[i].first>>k[i].second;
    }
    for(i=1 ; i<=a ; i++){
        for(j=1 ; j<=b ; j++){
            if(j>=k[i-1].first){
                dp[i][j]=max(dp[i-1][j],k[i-1].second+dp[i-1][j-k[i-1].first]);
            }
            else{
                dp[i][j]=dp[i-1][j];
            }
        }
    }
    ll ans=0;
    for(i=1 ; i<=b ; i++){
        ans=max(ans,dp[a][i]);
    }
    cout<<ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...