当前位置: 首页 > news >正文

做电商需要知道的几个网站百度文库账号登录入口

做电商需要知道的几个网站,百度文库账号登录入口,做理财的网站有哪些问题,地方网站怎么做挣钱题目 给你一个下标从 1 开始、长度为 n 的整数数组 nums 。 现定义函数 greaterCount ,使得 greaterCount(arr, val) 返回数组 arr 中 严格大于 val 的元素数量。 你需要使用 n 次操作,将 nums 的所有元素分配到两个数组 arr1 和 arr2 中。在第一次操…

题目

给你一个下标从 1 开始、长度为 n 的整数数组 nums 。

现定义函数 greaterCount ,使得 greaterCount(arr, val) 返回数组 arr 中 严格大于 val 的元素数量。

你需要使用 n 次操作,将 nums 的所有元素分配到两个数组 arr1 和 arr2 中。在第一次操作中,将 nums[1] 追加到 arr1 。在第二次操作中,将 nums[2] 追加到 arr2 。之后,在第 i 次操作中:

如果 greaterCount(arr1, nums[i]) > greaterCount(arr2, nums[i]) ,将 nums[i] 追加到 arr1 。
如果 greaterCount(arr1, nums[i]) < greaterCount(arr2, nums[i]) ,将 nums[i] 追加到 arr2 。
如果 greaterCount(arr1, nums[i]) == greaterCount(arr2, nums[i]) ,将 nums[i] 追加到元素数量较少的数组中。
如果仍然相等,那么将 nums[i] 追加到 arr1 。

连接数组 arr1 和 arr2 形成数组 result 。例如,如果 arr1 == [1,2,3] 且 arr2 == [4,5,6] ,那么 result = [1,2,3,4,5,6] 。

返回整数数组 result 。

示例 1:

输入:nums = [2,1,3,3]
输出:[2,3,1,3]
解释:在前两次操作后,arr1 = [2] ,arr2 = [1] 。
在第 3 次操作中,两个数组中大于 3 的元素数量都是零,并且长度相等,因此,将 nums[3] 追加到 arr1 。
在第 4 次操作中,两个数组中大于 3 的元素数量都是零,但 arr2 的长度较小,因此,将 nums[4] 追加到 arr2 。
在 4 次操作后,arr1 = [2,3] ,arr2 = [1,3] 。
因此,连接形成的数组 result 是 [2,3,1,3] 。

示例 2:

输入:nums = [5,14,3,1,2]
输出:[5,3,1,2,14]
解释:在前两次操作后,arr1 = [5] ,arr2 = [14] 。
在第 3 次操作中,两个数组中大于 3 的元素数量都是一,并且长度相等,因此,将 nums[3] 追加到 arr1 。
在第 4 次操作中,arr1 中大于 1 的元素数量大于 arr2 中的数量(2 > 1),因此,将 nums[4] 追加到 arr1 。
在第 5 次操作中,arr1 中大于 2 的元素数量大于 arr2 中的数量(2 > 1),因此,将 nums[5] 追加到 arr1 。
在 5 次操作后,arr1 = [5,3,1,2] ,arr2 = [14] 。
因此,连接形成的数组 result 是 [5,3,1,2,14] 。

示例 3:

输入:nums = [3,3,3,3]
输出:[3,3,3,3]
解释:在 4 次操作后,arr1 = [3,3] ,arr2 = [3,3] 。
因此,连接形成的数组 result 是 [3,3,3,3] 。

提示:

3 <= n <= 10^5
1 <= nums[i] <= 10^9

思路

如果不排序会超时,这个其实跟昨天写的那一篇一样,写一个结构体存一下,然后排序,这样就可以简化搜索
大概这样

typedef struct
{int oldIndex;int val;
}my_st_t;

排序之后,搜索的时候就可以直接二分查找,从n^2变成nlogn
然后再对arr1,arr2通过oldindex排序后拼接就行了

代码

完整代码

/*** Note: The returned array must be malloced, assume caller calls free().*/
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
int greaterCount(int* arr, int val, int arrsize)
{int cnt = 0;for (int i = 0; i < arrsize; i++){if(arr[i] > val){cnt++;}}return cnt;
}
int* resultArray(int* nums, int numsSize, int* returnSize) {int* arr1 = (int*)calloc(numsSize, sizeof(int));int* arr2 = (int*)calloc(numsSize, sizeof(int));int* res = (int*)calloc(numsSize, sizeof(int));arr1[0] = (int)nums[0];arr2[0] = (int)nums[1];int arr1index = 1, arr2index =1;for (int i = 2; i < numsSize; i++){int res1 = 0;int res2 = 0;res1 = greaterCount(arr1, nums[i], arr1index);res2 = greaterCount(arr2, nums[i], arr2index);if(res1 == res2){if(arr1index > arr2index){arr2[arr2index] = nums[i];arr2index++;}else{arr1[arr1index] = nums[i];arr1index++;}}else if(res1 > res2){arr1[arr1index] = nums[i];arr1index++;}else if(res1 < res2){arr2[arr2index] = nums[i];arr2index++;}}int resindex = 0;for (int i = 0; i < arr1index; i++,resindex++){res[resindex] = arr1[i];}for (int i = 0; i < arr2index; i++,resindex++){res[resindex] = arr2[i];}(*returnSize) = resindex;free(arr1);free(arr2);return res;
}int main(void)
{int arr[] = {5,14,3,1,2};int size = sizeof(arr) / sizeof(arr[0]);int returnsize = 0;int* res = resultArray(arr, size, &returnsize);for (int i = 0; i < returnsize; i++){printf("%d ", res[i]);}
}

结果

./test
input is : 5 14 3 1 2 
result is : 5 3 1 2 14 ./test
input is : 2 1 3 3 
result is : 2 3 1 3 ./test
size = 12
input is : 22 51 36 312 2344 6123 535 1235 723456 1243 5234 1234 
result is : 22 312 2344 535 723456 1243 51 36 6123 1235 5234 1234 

在这里插入图片描述

http://www.dinnco.com/news/17349.html

相关文章:

  • 晋江建设局网站html网页制作代码大全
  • 慈利网站开发微信app小程序开发
  • 国外网站注册免费手游推广平台
  • 怎样做php网站seo顾问服务四川
  • 巨野有做网站的公司吗中国十大网络销售公司
  • 黄酒的电商网页设计网站seo顾问服务福建
  • 如何做一款服装网站今天新闻联播
  • 企业网站seo成功案例app联盟推广平台
  • 优秀个人网站设计模板seo网络搜索引擎优化
  • wordpress 分类 排序抚州seo排名
  • 兰州网站建设公司排名怎么制作属于自己的网址
  • 798艺术区个人拍照图片及价格债务优化是什么意思
  • 网站建设日程表表格中国网站建设公司前十名
  • 搞一个卖东西的网站怎么做惠州网站推广排名
  • 云南人才网招聘网官网seo外链工具
  • 镇江企业做网站互联网广告优化
  • 南昌哪家网站开发公司好培训网址
  • 东莞手机网站建设怎么选收录情况
  • 食品网站应该怎么做三生网络营销靠谱吗
  • 做网站的公司那家好站长工具国产
  • 宝鸡seo千度seo
  • 如何做网站活动qq推广
  • 专业上海网站建设公司自媒体平台收益排行榜
  • 网站建设dede模板免费广州商务网站建设
  • 大良营销网站建设案例一个新品牌如何推广
  • 有什么关于网站建设实例的书app拉新推广平台渠道商
  • 源码网站开发制作网页代码大全
  • 嘉定网站设计制作公司网站代运营价格
  • 山西网站开发二次开发百度账号客服人工电话
  • 企业网站建设方案东莞建设网