#include #include int b[5001],e[5001],f[5001],ans; int max(int x,int y) { if (x>y) return x; else return y; } void qsort(int l,int r) { int i,j,m,p; i=l;j=r; m=b[(l+r)/2]; do { while (b[i]m) j--; if (i<=j) { p=b[i];b[i]=b[j];b[j]=p; p=e[i];e[i]=e[j];e[j]=p; i++;j--; } } while (i<=j); if (i=e[j]) f[i]=max(f[i],f[j]+e[i]-b[i]); ans=0; for(i=1;i<=n;i++) if (f[i]>ans) ans=f[i]; printf("%d",ans); }