题目链接:
题意:有两个音乐厅出租。给出n个租客,每个租客有个租的时间段[L,R],以及租费。任意时候音乐厅只能租给最多一个租客。问如何选择租给哪些租客使得赚的钱最多?
思路:f[i][j]表示第一个音乐厅到时刻i、第二个到时刻j,可以获得的最大值。
struct node{ int x,y,w; int operator<(const node &a) const { return y=0;j--) { upMax(f[j][a[i].y],f[j][a[i].x-1]+a[i].w); upMax(f[a[i].y][j],f[a[i].x-1][j]+a[i].w); } } PR(f[a[n].y][a[n].y]); }}