1365. 有多少小于当前数字的数字

墨蓝 2023-09-30 12:43 107阅读 0赞

给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目。

换而言之,对于每个 nums[i] 你必须计算出有效的 j 的数量,其中 j 满足 j != i 且 nums[j] < nums[i] 。

以数组形式返回答案。

示例 1:

  1. 输入:nums = [8,1,2,2,3]
  2. 输出:[4,0,1,1,3]
  3. 解释:
  4. 对于 nums[0]=8 存在四个比它小的数字:(122 3)。
  5. 对于 nums[1]=1 不存在比它小的数字。
  6. 对于 nums[2]=2 存在一个比它小的数字:(1)。
  7. 对于 nums[3]=2 存在一个比它小的数字:(1)。
  8. 对于 nums[4]=3 存在三个比它小的数字:(12 2)。

示例 2:

  1. 输入:nums = [6,5,4,8]
  2. 输出:[2,1,0,3]

示例 3:

  1. 输入:nums = [7,7,7,7]
  2. 输出:[0,0,0,0]

提示:

2 <= nums.length <= 500
0 <= nums[i] <= 100

完整代码

  1. class Solution {
  2. public:
  3. vector<int> smallerNumbersThanCurrent(vector<int>& nums) {
  4. int len = nums.size();
  5. vector<int> v;
  6. int count=0;
  7. for(int i = 0;i < len ;i++){
  8. for(int j = 0; j < len;j++){
  9. if(i==j) continue;
  10. if(nums[i]>nums[j]){
  11. count++;
  12. }
  13. }
  14. v.push_back(count);
  15. count=0;
  16. }
  17. return v;
  18. }
  19. };

发表评论

表情:
评论列表 (有 0 条评论,107人围观)

还没有评论,来说两句吧...

相关阅读