#我的第三个点RE,第五个点WA了,求大佬帮忙看看,急急急!
查看原帖
#我的第三个点RE,第五个点WA了,求大佬帮忙看看,急急急!
547924
hdhdhgb楼主2021/8/11 23:44
#include <iostream>
#include <string.h>
#include <algorithm>
using namespace std;
int dp[1000010];
int main()
{
    int m,n,a[1400],b[10001],c[65];
    string st[15];
    cin>>m>>n;
    for(int i=0;i<n;i++)
    cin>>a[i]>>b[i]>>c[i]>>st[i];
    for(int i=0;i<n-1;i++)
    {
        for(int j=i+1;j<n;j++)
        {
            if(st[i]==st[j]&&a[i]<c[i])
            {
                if(a[i]+a[j]<=c[i])
                {
                    a[i]=a[i]+a[j];
                    a[j]=0;
                }
                else
                {
                    a[i]=c[i];
                    a[j]=a[j]-(c[i]-a[i]);break;
                }
            }
        }
    }
    for(int i=0;i<n;i++)
    for(int j=21-m;j>=1;j--)
    dp[j]=max(dp[j],dp[j-1]+a[i]*b[i]);
    cout<<dp[21-m];
    return 0;
}
2021/8/11 23:44
加载中...