參考資訊:
https://www.cnblogs.com/cnoodle/p/14225820.html
題目:
解答:
int mysort(const void *a, const void *b) { return (*(const int *)a) - (*(const int *)b); } int maxOperations(int* nums, int numsSize, int k) { int r = 0; int st = 0; int ed = numsSize - 1; qsort(nums, numsSize, sizeof(int), mysort); while (st < ed) { int v = nums[st] + nums[ed]; if (v == k) { r += 1; st += 1; ed -= 1; } else if (v < k) { st += 1; } else { ed -= 1; } } return r; }