题目:
样例输入:
70 3
71 100
69 1
1 2
样例输出:
3
答案:
#include<bits/stdc++.h>
using namespace std;
int ti[105];
int va[105];
int dp[105][1005];
int main()
{
int T,M;cin>>T>>M;
for(int i=1;i<=M;i++)
{
cin>>ti[i]>>va[i];
}
for(int i=1;i<=M;i++)
{
for(int j=1;j<=T;j++)
{
if(ti[i]>j)
{
dp[i][j]=dp[i-1][j];
}
else
{
dp[i][j]=max(dp[i-1][j],dp[i-1][j-ti[i]]+va[i]);
}
}
}
cout<<dp[M][T]<<endl;
}
本站资源均来自互联网,仅供研究学习,禁止违法使用和商用,产生法律纠纷本站概不负责!如果侵犯了您的权益请与我们联系!
转载请注明出处: 免费源码网-免费的源码资源网站 » 01 P1048 [NOIP2005 普及组] 采药
发表评论 取消回复