90分求助
查看原帖
90分求助
1043658
Purple_meteor楼主2023/9/3 15:33
#include<bits/stdc++.h>
using namespace std;
int n,c[10001],t[10001],p[10001],dp[10001][10001];
int h1,m1,h2,m2,T;
int main()
{
	scanf("%d:%d%d:%d%d",&h1,&m1,&h2,&m2,&n);
	T=(h2-h1)*60+m2-m1;
	for(int i=1;i<=n;i++)
	{
		scanf("%d%d%d",&t[i],&c[i],&p[i]);
		for(int j=1;j<=T;j++)
		{
			int P=p[i];
			do
			{
				dp[i][j]=max(dp[i-1][j-(p[i]-P)*t[i]]+c[i]*(p[i]-P),dp[i][j]);
				P--;
			}
			while(P!=0&&j-(p[i]-P)*t[i]>=0);
		}
	}
	printf("%d",dp[n][T]);
	return 0;
}

4AC,6WA,求大佬们帮忙看看。

2023/9/3 15:33
加载中...