#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,求大佬们帮忙看看。