Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- java
- Dynamic Programming
- 파이썬
- Codility
- Programmers
- 그리디
- docker
- golang
- github
- Singleton Pattern
- Top-down
- k8s
- cpu scheduling
- Backjoon
- GCP
- kubernetes
- 알고리즘
- GKE
- 피보나치
- easy
- Python
- go
- LeetCode
- BubbleSort
- KAKAO
- mobaXTerm
- Kotlin
- 백준
- Observer Pattern
Archives
- Today
- Total
To Be Developer
[LeetCode] 219. Contains Duplicate II (Python) 본문
https://leetcode.com/problems/contains-duplicate-ii/
[Python 풀이]
class Solution(object):
def containsNearbyDuplicate(self, nums, k):
"""
:type nums: List[int]
:type k: int
:rtype: bool
"""
# nums가 중복이 없다면 return False
if len(set(nums)) == len(nums):
return False
# nums 의 크기
size = len(nums)
# nums 를 index와 value 를 하나하나 꺼내서 비교해본다.
for i, v in enumerate(nums):
# 여기서 out of range exception이 발생할 수 있기에
# try except 를 해준다.
try:
# 문제에서 index간의 거리가 최대 k 인 value를 비교하라 하였으므로
# value가 같다면 return True를 해주고 method를 종료한다.
for j in range(1, k+1):
if v == nums[i+j]:
return True
except:
# out of range Exception 이 발생하면 반복문을 건너뛴다.
pass
# 위의 코드에서 무사히 여기까지 온다면 문제에서 True의 조건에 해당하지 않으므로
# return False를 한다.
return False
'알고리즘 > LeetCode' 카테고리의 다른 글
[LeetCode] 746. Min Cost Climbing (Python) (0) | 2019.04.30 |
---|---|
[LeetCode] 27. Remove Element(Python, GoLang) (0) | 2019.04.29 |
[LeetCode] 504. Relative Ranks (Python) (0) | 2019.04.21 |
[LeetCode] 20. Valid Parentheses (Python) (0) | 2019.04.17 |
[LeetCode] 62. Unique Paths (GoLang, Python) (0) | 2019.04.12 |