-
2020-01-25] Check If All 1's Are at Least Length K Places AwayIT/자기계발 ( Leetcode ) 2021. 1. 26. 00:07반응형
이번 문제는 Easy 문제이다. 문제 예시를 보며 간단히 이해해보자.
주어지는 0,1로 이뤄진 1차원 배열에서 k 값 만큼 모든 1과 1사이가 떨어져 있는지 검사하는 문제이다.
예시 1번은 k가 2이고 각 1 사이끼리의 떨어진 index 거리가 3,2 이기 때문에 True
예시 2번은 k가 2이고 각 1 사이끼리의 떨어진 index 거리가 2,1 이기 때문에 False
간단하게, 1차원 배열의 for문을 돌면서, 값이 1인 index를 저장하여, 이전 저장한 index까지의 거리와 k를 비교
문제풀이)
class Solution: def kLengthApart(self, nums: List[int], k: int) -> bool: firstone=-1 for i in range(len(nums)): if nums[i]==1: if firstone==-1: firstone=i else: if i-firstone-1 < k: return False else: firstone=i return True
반응형'IT > 자기계발 ( Leetcode )' 카테고리의 다른 글
2021-01-28] Smallest String With A Given Numeric Value (0) 2021.01.29 2021-01-27] Concatenation of Consecutive Binary Numbers (0) 2021.01.27 2021-01-24] Merge k Sorted Lists (0) 2021.01.24 2021-01-23] Sort the Matrix Diagonally (0) 2021.01.23 2021-01-22] Determine if Two Strings Are Close (0) 2021.01.22