* 3시간 안에 답을 내지 못하면 답지를 보고 30분 내로 정답 판정을 받고, 3일 뒤 다시 풀어보기
문제
https://school.programmers.co.kr/learn/courses/30/lessons/12981
→ Summer/Winter Coding(~2018)에 속한 문제
문제 해결 아이디어
words를 순회하면서 끝말잇기에서 탈락하는 경우가 생기면
순서와 차례를 계산해서 반환한다.
구현
내 풀이
def solution(n, words):
added_words = set()
for i, word in enumerate(words):
if word in added_words or (i > 0 and words[i - 1][-1] != word[0]) :
number = (i + 1) % n if (i + 1) % n != 0 else n
order = (i + 1) // n if (i + 1) % n == 0 else (i + 1) // n + 1
return [number, order]
added_words.add(word)
return [0, 0]
메모
- 걸린 시간: 20분
'Algorithm' 카테고리의 다른 글
[알고리즘] LeetCode Medium - Container With Most Water (0) | 2023.08.16 |
---|---|
[알고리즘] 프로그래머스 Level 1 - 체육복 (0) | 2023.07.21 |
[알고리즘] BOJ 1495번 - 기타리스트(python3) (0) | 2023.06.23 |
[알고리즘] BOJ 16953번 - A → B(python3) (0) | 2023.06.22 |
[알고리즘] BOJ 14226번 - 이모티콘(python3) (1) | 2023.06.19 |