#include #include using namespace std; struct Node{ int a,b,c; }; bool com(Node &a,Node &b){ return a.a=1;i--){ kan[i]=no[i]=0; int begin=i; int end=number; while(beginnodes[i].b){ end=mid; }else{ begin=mid+1; } } if(nodes[end].a>nodes[i].b){ kan[i]=nodes[i].c+(kan[end]>no[end]?kan[end]:no[end]); }else{ kan[i]=nodes[i].c; } no[i]=(kan[i+1]>no[i+1]?kan[i+1]:no[i+1]); } printf("%d\n",kan[1]>no[1]?kan[1]:no[1]); } }