파비의 매일매일 공부기록

Today's Challenge 본문

Problem Solving/LeetCode

Today's Challenge

fabichoi 2022. 5. 4. 23:45

https://leetcode.com/problems/max-number-of-k-sum-pairs

 

Max Number of K-Sum Pairs - LeetCode

Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.

leetcode.com

Two-Pointer를 이용해서 풀면 된다.
그러려면 전제조건이 주어진 데이터가 정렬이 돼있어야 한다.

양 끝단의 index를 변수로 놓고, 두 index의 값을 합했을 때 원하는 값이 나오면 양쪽 다 한 칸씩 줄이고
작으면 왼쪽 끝단을, 크면 오른쪽 끝단을 조정해서 풀면 된다.

class Solution:
    def maxOperations(self, nums: List[int], k: int) -> int:
        nums.sort()
        l, r = 0, len(nums) - 1
        res = 0
        while l < r:
            s = nums[l] + nums[r]
            
            if s > k:
                r -= 1            
            elif s < k:
                l += 1
            else:
                res += 1
                l += 1
                r -= 1
        return res

조금 허무한 문제 유형인 듯.
뭔가 좀 풀기 어려워 보이면 일단 정렬해서 생각해보는 것도 좋은 방법일 것 같다.

반응형

'Problem Solving > LeetCode' 카테고리의 다른 글

Today's Challenge  (0) 2022.05.06
Today's Challenge  (0) 2022.05.05
Today's Challenge  (0) 2022.05.03
Today's Challenge  (0) 2022.05.02
Today's Challenge  (0) 2022.05.01
Comments