Skip to content

[Week 6] DICTIONARY self review - profitjeanย #190

@profitjean

Description

@profitjean

DICTIONARY self review

1. ํ•ด๊ฒฐ ์‹œ๋„ ๊ณผ์ •

๊ทธ๋ž˜ํ”„๋กœ ํ‘œํ˜„ํ•˜๊ณ  ์œ„์ƒ์ •๋ ฌ์„ ํ†ตํ•ด ๋ฌธ์ž๋“ค์˜ ์ˆœ์„œ๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋ผ ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, b->a->b ์ฒ˜๋Ÿผ ์‚ฌ์ดํด์ด ํ˜•์„ฑ๋˜๋Š” ๊ฒฝ์šฐ๋„ ๊ณ ๋ คํ•ด์ค˜์•ผ๊ฒ ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

2. ์ž‘์„ฑํ•œ ์ฝ”๋“œ์™€ ์„ค๋ช…

T = int(input().rstrip())
for _ in range(T):
    graph = defaultdict(set)
    N = int(input().rstrip())
    words = []
    visited = {}
    for _ in range(N):
        words.append(input().rstrip())
    # ์ด์ „ ๋ฌธ์ž์—ด๊ณผ ๋น„๊ตํ•˜๋ฉด์„œ ๋‹ค๋ฅด๋‹ค๋ฉด ๊ทธ๋ž˜ํ”„์— ์ถ”๊ฐ€์‹œ์ผœ์ฃผ๊ธฐ
    prev = ""
    for word in words:
        for i in range(min(len(prev), len(word))):
            if prev[i] != word[i]:
                graph[prev[i]].add(word[i])
                visited[prev[i]] = None
                visited[word[i]] = None
                break
        prev = word

3. ๋ง‰ํžŒ ์  ๋ฐ ๊ฐœ์„  ์‚ฌํ•ญ

์ดํ›„ dfs ๊ตฌํ˜„ ์ดํ›„ ์—ญ๋ฐฉํ–ฅ์œผ๋กœ reverse ์‹œํ‚ค๋Š” ๋ถ€๋ถ„์„ ๊ตฌํ˜„ํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค

Metadata

Metadata

Assignees

No one assigned

    Labels

    2๊ธฐ์Šคํ„ฐ๋”” 2๊ธฐWAWrong Answer

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions