采药

#include<iostream>
using namespace std;
int main()
{
    int a[1001]={0},i,j,n,T,M,k,t,b1,b2;
    cin>>T>>M;
    for(i=1;i<=M;i++)
    {
        cin>>b1>>b2;
        for(j=T;j>0;j--)
        {
            if(j>=b1)
                a[j]= a[j]>a[j-b1]+b2?a[j]:a[j-b1]+b2;
            else break;
        }
    }
    cout<<a[T];
    return 0;
}

http://www.rqnoj.cn/Problem_15.html

原文地址:https://www.cnblogs.com/tjsudys/p/2914284.html