【LeetCode】每日一题 2023_11_24 统计和小于目标的下标对数目(暴力/双指针)

文章目录

  • 刷题前唠嗑
  • 题目:统计和小于目标的下标对数目
    • 题目描述
    • 代码与解题思路
  • 结语

刷题前唠嗑

【LeetCode】每日一题 2023_11_24 统计和小于目标的下标对数目(暴力/双指针)_第1张图片
LeetCode?启动!!!

题目:统计和小于目标的下标对数目

题目链接:2824. 统计和小于目标的下标对数目

题目描述

【LeetCode】每日一题 2023_11_24 统计和小于目标的下标对数目(暴力/双指针)_第2张图片

代码与解题思路

一眼顶真,鉴定为:暴力?启动!

func countPairs(nums []int, target int) (ans int) {
    for i := 0; i < len(nums); i++ {
        for j := i+1; j < len(nums); j++ {
            if nums[i]+nums[j] < target {
                ans++
            }
        } 
    }
    return ans
}

不过暴力并不是最优解,所以 . . . 双指针?启动!

func countPairs(nums []int, target int) (ans int) {
    sort.Ints(nums)
    for left, right := 0, len(nums)-1; left < right; left++ {
        for right >= 0 && nums[left]+nums[right] >= target { right-- }
        if left < right {
            ans += right-left
        }
    }
    return ans
}

也许还能用二分来做,不过我就摸了。。。

结语

今天睡懒觉了,每日一题晚了点儿

你可能感兴趣的:(LeetCode,每日一题,leetcode,数据结构,算法)