1 solutions

  • 0
    @ 2025-11-5 16:16:25

    C++ :

    #include <iostream>
    #include <cstdio>
    #include <algorithm>
    #include <cmath>
    #include <cstdlib>
    #include <cstring>
    using namespace std;
    const int N=111111;
    long long w[N];
    long long v[N];
    long long dp[1111];
    int main()
    {
        long long T,t,n;
            memset(dp,0,sizeof(dp));
            cin>>t>>n;
            //cout<<"n::"<<t<<endl;
            for(long long i=0;i<n;i++)
            {
                cin>>w[i]>>v[i];
            }
            for(long long i=0;i<n;i++)
            {
                for(long long j=t;j>=w[i];j--)
                {
                    dp[j]=max(dp[j],dp[j-w[i]]+v[i]);
                }
            }
            cout<<dp[t]<<'\n';
        return 0;
    }
    
    • 1

    Information

    ID
    17633
    Time
    1000ms
    Memory
    128MiB
    Difficulty
    (None)
    Tags
    # Submissions
    0
    Accepted
    0
    Uploaded By