精華區beta Marginalman 關於我們 聯絡資訊
※ 引述《NCKUEECS (小惠我婆)》之銘言: : ※ 引述《JIWP (神楽めあ的錢包)》之銘言: : : 57. Insert Interval : : 給一個array:intervals;intervals[i]=[start_i,end_i] : : intervals是照這start_i的大小由小排到大的 : : 並且intervals中的元素沒有重疊 : : 給一個newInterval要插入intervals中,請回傳新的intervals : 花點數補交作業 : 用C督老半天 : 打不贏就加入C++ : 好爽喔malloc跟**都去死吧 C code給你 /** * Return an array of arrays of size *returnSize. * The sizes of the arrays are returned as *returnColumnSizes array. * Note: Both returned array and *columnSizes array must be malloced, assume caller calls free(). */ /** * Return an array of arrays of size *returnSize. * The sizes of the arrays are returned as *returnColumnSizes array. * Note: Both returned array and *columnSizes array must be malloced, assume caller calls free(). */ int** insert(int** intervals, int intervalsSize, int* intervalsColSize, int* newInterval, int newIntervalSize, int* returnSize, int** returnColumnSizes) { int start=newInterval[0],end=newInterval[1],first=0,last=intervalsSize-1, **ans ,k=0; ans=(int**)malloc(sizeof(int*)*(intervalsSize+1)); *returnColumnSizes=(int*)malloc(sizeof(int)*(intervalsSize+1)); bool hasinsert=false; for (int i=0;i<intervalsSize;i++){ if (start > intervals[i][1]){ (*returnColumnSizes)[k]=2; ans[k]=(int*)malloc(sizeof(int)*2); ans[k][0]=intervals[i][0]; ans[k][1]=intervals[i][1]; k++; }else if(end < intervals[i][0]){ if (!hasinsert){ (*returnColumnSizes)[k]=2; ans[k]=(int*)malloc(sizeof(int)*2); ans[k][0]=start; ans[k][1]=end; k++; hasinsert=true; } (*returnColumnSizes)[k]=2; ans[k]=(int*)malloc(sizeof(int)*2); ans[k][0]=intervals[i][0]; ans[k][1]=intervals[i][1]; k++; }else{ if (intervals[i][0] < start){ start=intervals[i][0]; } if (intervals[i][1] > end){ end=intervals[i][1]; } } } if (!hasinsert){ (*returnColumnSizes)[k]=2; ans[k]=(int*)malloc(sizeof(int)*2); ans[k][0]=start; ans[k][1]=end; k++; } *returnSize=k; return ans; } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.72.176.231 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1710834802.A.24D.html
oin1104: 這三小= = 03/19 15:54
JIWP: 我也不知道,之前寫好玩的 03/19 15:55
sustainer123: 大師 03/19 16:01