NKBUS - Bus

Tác giả: hieult

Ngôn ngữ: C++

#include <iostream>
#include <algorithm>
#include <cstdlib>
using namespace std;
long long A[200002];

int compare(const void *a, const void *b)
{
   return (* (int*)a-*(int*) b );
}

int main()
{
  long long m,n,sum=0,tg,snv,nv,count=0,i,j;
  //
  //freopen("input.txt","r",stdin);
  //freopen("output.txt","w",stdout);
  //
  scanf("%lld%lld",&n,&m);
  memset(A,0,sizeof A);
  for (i=1;i<=n;i++) {
    scanf("%lld%lld",&tg,&snv);
    for (j=1;j<=snv;j++){            
      scanf("%lld",&nv); 
      if (nv>sum) A[count]=nv-sum;
      //else A[count]=0;
      count++;
    }
    sum=sum+tg;
  }
 // sort(A,A+count);
  qsort(A,count,sizeof(long long),compare);
  //
  //for (i=0;i<count;i++) cout<<A[i]<<" ";
  //cout<<endl;
  //
  //cout<<sum<<endl;
  sum=sum+A[m-1];
  printf("%lld\n",sum);
}

Download