Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
Re:LIS简单变式In Reply To:LIS简单变式 Posted by:Frank__Chen at 2019-02-26 21:34:05 > #include<cstdio> > #include<algorithm> > using namespace std; > > struct node{ > int s,e,c; > }a[1005]; > > bool cmp(node x,node y){ > return x.s<y.s; > } > int n,m,r,res,dp[1005]; > > int main(){ > scanf("%d%d%d",&n,&m,&r); > for(int i=1;i<=m;++i) > scanf("%d%d%d",&a[i].s,&a[i].e,&a[i].c); > sort(a+1,a+m+1,cmp); > for(int i=1;i<=m;++i) dp[i]=a[i].c; > for(int i=2;i<=m;++i){ > for(int j=i-1;j>=1;--j) > if(a[j].e+r<=a[i].s) > dp[i]=max(dp[i],dp[j]+a[i].c); > if(dp[i]>res) res=dp[i]; > } > printf("%d\n",res); > return 0; > } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator