[LeetCode] 2811. Check if it is Possible to Split Array

2023. 8. 9. 21:13·Problem Solving/LeetCode

https://leetcode.com/problems/check-if-it-is-possible-to-split-array/description/

 

 

지난 주 위클리 B번 문제.(해결하지 못했다.)

아주 코포스러운 문제(?)라고 한다. 문제에서 요구하는 근본적인 문제를 해결한다면 간단한 구현으로 풀이가 가능했다.

 

1. 두 개 합쳐서 m이상인 길이 2의 배열이 하나도 없을 때 왜 불가능한가?

ex) arr =[2,1,1,1] m = 4 

문제에서 요구하는대로 진행하다보면 결국 길이 1의 subarray가 각각 1개씩, 총 2개가 남아야한다. 그러기 위해선 이전 단계에서 [길이가 2인 m보다 크거나 같은 합을 가진 subarray] , [길이가 1인 subarray]에서 split이 이루어져야 한다. 하지만 예로 든 배열에선 길이가 2인 subarray의 최대 합은 3이다. 그말인즉슨, 이전 단계에서 많은 과정을 거친다하더라도 마지막 단계를 거치지 못한다는 결론이 도출된다. 

 

arr1=[2,1] < m(=4) => 조건을 만족하지 못함

arr2=[1]  

 

그렇기 때문에 아래와 같은 간단한 구현으로 이 문제를 해결할 수 있다. (도움을 주신 피자사와님 감사합니다.)

class Solution:
    def canSplitArray(self, nums: List[int], m: int) -> bool:
        if len(nums) <= 2 : return True

        for i in range(len(nums)-1) : 
            if nums[i] + nums[i+1] >= m :
                return True

        return False
'Problem Solving/LeetCode' 카테고리의 다른 글
  • [LeetCode] 746. Min Cost Climbing Stairs
  • [LeetCode] 49. Group Anagrams
  • [LeetCode] 33. Search in Rotated Sorted Array.
  • [LeetCode] 88. Merge Sorted Array
kimdozzi
kimdozzi
끝까지 포기하지 않으면, 내가 다 이겨!
  • kimdozzi
    도브로
    kimdozzi
  • 전체
    오늘
    어제
    • 분류 전체보기 (132)
      • Problem Solving (49)
        • Baekjoon (29)
        • Programmers (0)
        • LeetCode (17)
        • 삼성 유형 (2)
      • Computer Science (27)
        • Operating System (2)
        • Algorithms (13)
        • Network (6)
        • DataBase (6)
      • Backend (33)
        • JavaScript (0)
        • TypeScript (6)
        • Java (7)
        • Spring Boot (7)
        • Spring Security (6)
        • JPA (2)
        • Mybatis (1)
        • Junit5 (1)
        • Redis (3)
      • DevOps (14)
        • Git, Github (5)
        • docker (4)
        • AWS (3)
        • nginx (2)
      • etc (6)
        • IntelliJ (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 티스토리
    • 설정
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    오블완
    구간합
    python
    인터페이스
    Bucket
    segment tree
    백준
    세그먼트 트리
    imos법
    누적합
    인덱스 시그니처
    interface
    컨테이너
    삼성기출
    docker image
    인덱서블 타입
    TypeScript
    온라인 쿼리
    오프라인 쿼리
    docker
    PrefixSum
    티스토리챌린지
    AWS
    타입스크립트
    CORS
    알고리즘
    S3
    점 업데이트
    구간 업데이트
    도커
    파이썬
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
kimdozzi
[LeetCode] 2811. Check if it is Possible to Split Array
상단으로

티스토리툴바