Skip to content

Commit 7b7f877

Browse files
authored
Update 4.py
1 parent 72aa14a commit 7b7f877

1 file changed

Lines changed: 9 additions & 9 deletions

File tree

15/4.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,25 +7,25 @@ def count_by_range(a, left_value, right_value):
77
return right_index - left_index
88

99
# 모든 단어들을 길이마다 나누어서 저장하기 위한 리스트
10-
data = [[] for _ in range(10001)]
10+
array = [[] for _ in range(10001)]
1111
# 모든 단어들을 길이마다 나누어서 뒤집어 저장하기 위한 리스트
12-
reversed_data = [[] for _ in range(10001)]
12+
reversed_array = [[] for _ in range(10001)]
1313

1414
def solution(words, queries):
1515
answer = []
1616
for word in words: # 모든 단어를 접미사 와일드카드 배열, 접두사 와일드카드 배열에 각각 삽입
17-
data[len(word)].append(word)
18-
reversed_data[len(word)].append(word[::-1])
17+
array[len(word)].append(word) # 단어를 삽입
18+
reversed_array[len(word)].append(word[::-1]) # 단어를 뒤집어서 삽입
1919

20-
for i in range(10001): # 이진 탐색을 수행하기 위해 각 단어들 정렬 수행
21-
data[i].sort()
22-
reversed_data[i].sort()
20+
for i in range(10001): # 이진 탐색을 수행하기 위해 각 단어 리스트 정렬 수행
21+
array[i].sort()
22+
reversed_array[i].sort()
2323

2424
for q in queries: # 쿼리를 하나씩 확인하며 처리
2525
if q[0] != '?': # 접미사에 와일드 카드가 붙은 경우
26-
res = count_by_range(data[len(q)], q.replace('?', 'a'), q.replace('?', 'z'))
26+
res = count_by_range(array[len(q)], q.replace('?', 'a'), q.replace('?', 'z'))
2727
else: # 접두사에 와일드 카드가 붙은 경우
28-
res = count_by_range(reversed_data[len(q)], q[::-1].replace('?', 'a'), q[::-1].replace('?', 'z'))
28+
res = count_by_range(reversed_array[len(q)], q[::-1].replace('?', 'a'), q[::-1].replace('?', 'z'))
2929
# 검색된 단어의 개수를 저장
3030
answer.append(res)
3131
return answer

0 commit comments

Comments
 (0)