| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- 읽기
- 뭐든
- leetcode
- 30분
- 10분
- 개발자
- English
- 매일
- 운동
- 쓰릴오브파이트
- 파비최
- 영어원서읽기
- 화상영어
- 사이드
- 프로젝트
- 미드시청
- 잡생각
- Daily Challenge
- 영어공부
- realclass
- 괜찮음
- 리얼 클래스
- Writing
- 스탭퍼
- 만화도
- 링피트
- 월간
- Problem Solving
- 3줄정리
- FIT XR
Archives
- Today
- Total
파비의 매일매일 공부기록
Today's Challenge 본문
https://leetcode.com/problems/substring-with-concatenation-of-all-words/
Substring with Concatenation of All Words - 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
해시 형태를 사용해도 되고 슬라이딩 윈도우를 사용해서 풀어도 되는 문제라고 한다.
솔루션을 봐도 이해가 잘 안감 =_=
class Solution:
def findSubstring(self, s: str, words: List[str]) -> List[int]:
m = len(words)
k = len(words[0])
res = []
for i in range(k):
left = i
d = Counter(words)
for j in range(left, len(s) + 1 - k, k):
word = s[j: j+k]
d[word] -= 1
while d[word] < 0:
d[s[left: left + k]] += 1
left += k
if left + k * m == j + k:
res.append(left)
return res반응형
'Problem Solving > LeetCode' 카테고리의 다른 글
| Today's Challenge (0) | 2022.08.15 |
|---|---|
| Today's Challenge (0) | 2022.08.14 |
| Today's Challenge (0) | 2022.08.12 |
| Today's Challenge (0) | 2022.08.11 |
| Today's Challenge (0) | 2022.08.10 |
Comments