6 int rmb
[maxn
],rp
[maxn
],t
[maxn
];
7 int f
[maxn
][maxn
],g
[maxn
][maxn
];
10 for (i
=1; i
<=n
; i
++) scanf("%d%d%d",&(rmb
[i
]),&(rp
[i
]),&(t
[i
]));
11 int m
,r
; //m->rmb, r->rp
14 for (j
=m
; j
>=rmb
[i
]; j
--)
15 for (k
=r
; k
>=rp
[i
]; k
--)
16 if (f
[j
-rmb
[i
]][k
-rp
[i
]]+1>f
[j
][k
]) {
17 f
[j
][k
]=f
[j
-rmb
[i
]][k
-rp
[i
]]+1;
18 g
[j
][k
]=g
[j
-rmb
[i
]][k
-rp
[i
]]+t
[i
];
20 else if (f
[j
-rmb
[i
]][k
-rp
[i
]]+1==f
[j
][k
] && g
[j
-rmb
[i
]][k
-rp
[i
]]+t
[i
]<g
[j
][k
])
21 g
[j
][k
]=g
[j
-rmb
[i
]][k
-rp
[i
]]+t
[i
];
25 if ((f
[i
][j
]>ans
) || (f
[i
][j
]==ans
&& g
[i
][j
]<anstime
)) {
29 printf("%d\n",anstime
);