#include #include #define max(x,y) ((x)>(y)?(x):(y)) #define min(x,y) ((x)<(y)?(x):(y)) long n,m,work[100000]; typedef struct{ int cost; long f,e; } node; node pass[500000]; long index[100000]; long next[100000]; long time[100000]; long limit[100000]; int cmp_1(const void *a,const void*b){ return ((node*)a)->f-((node*)b)->f; } int cmp_2(const void*a,const void*b){ return ((node*)a)->e-((node*)b)->e; } int main(){ long i,j,count,cri; scanf("%ld %ld",&n,&m); for(i=0;i