/**
* Definition for an interval.
* struct Interval {
* int start;
* int end;
* };
*/
/**
* Return an array of size *returnSize.
* Note: The returned array must be malloced, assume caller calls free().
*/
int cmp(const void *a, const void *b){
return ((struct Interval*)a) -> start - ((struct Interval*)b) -> start;
}
struct Interval* merge(struct Interval* intervals, int intervalsSize, int* returnSize) {
qsort(intervals, intervalsSize, sizeof(struct Interval), cmp);
*returnSize = intervalsSize;
struct Interval* res = (struct Interval*)malloc(sizeof(struct Interval) * intervalsSize);
if(intervalsSize == 0 || intervalsSize == 1)
return intervals;
int i, j, t_s, t_e;
j = 0;
* Definition for an interval.
* struct Interval {
* int start;
* int end;
* };
*/
/**
* Return an array of size *returnSize.
* Note: The returned array must be malloced, assume caller calls free().
*/
int cmp(const void *a, const void *b){
return ((struct Interval*)a) -> start - ((struct Interval*)b) -> start;
}
struct Interval* merge(struct Interval* intervals, int intervalsSize, int* returnSize) {
qsort(intervals, intervalsSize, sizeof(struct Interval), cmp);
*returnSize = intervalsSize;
struct Interval* res = (struct Interval*)malloc(sizeof(struct Interval) * intervalsSize);
if(intervalsSize == 0 || intervalsSize == 1)
return intervals;
int i, j, t_s, t_e;
j = 0;