64,077
社区成员
发帖
与我相关
我的任务
分享
int maximumDifference(int* nums, int numsSize){
int ans = -1;
for(int i = 0; i < numsSize - 1; ++i){
for(int j = i + 1; j < numsSize; ++j){
int tmp = nums[j] - nums[i];
if(tmp > 0 && tmp > ans){
ans = nums[j] - nums[i];
}
}
}
return ans;
}
int findClosestNumber(int* nums, int numsSize){
int ans = nums[0];
for(int i = 1; i < numsSize; ++i){
if(abs(nums[i]) < abs(ans)){
ans = nums[i];
}
else if(abs(nums[i]) == abs(ans) && ans < nums[i]){
ans = nums[i];
}
}
return ans;
}
int* finalPrices(int* prices, int pricesSize, int* returnSize){
for(int i = 0; i < pricesSize; ++i){
for(int j = i + 1; j < pricesSize; ++j){
if(prices[j] <= prices[i]){
prices[i] -= prices[j];
break;
}
}
}
*returnSize = pricesSize;
return prices;
}
int* intersection(int** nums, int numsSize, int* numsColSize, int* returnSize){
int hash[1001];
memset(hash, 0, sizeof(hash));
for(int i = 0; i < numsSize; ++i){
for(int j = 0; j < numsColSize[i]; ++j){
++hash[nums[i][j]];
}
}
int* ret = (int*)malloc(sizeof(int) * numsColSize[0]);
int cnt = 0;
for(int i = 1; i < 1001; ++i){
if(hash[i] == numsSize){
ret[cnt++] = i;
}
}
*returnSize = cnt;
return ret;
}