hugDog
Android DevLog
hugDog
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๐Ÿ™Œ Hello? (162)
    • ๐Ÿงฉ์•ˆ๋“œ๋กœ์ด๋“œ (12)
      • ๊ฐœ๋… ์ •๋ฆฌ (5)
      • ๋ฒ„๊ทธ ํ•ด๊ฒฐ (4)
      • ๊ธฐํƒ€ (3)
    • ๐Ÿ”์•Œ๊ณ ๋ฆฌ์ฆ˜ (54)
      • ๊ฐœ๋… (0)
      • ๋ฐฑ์ค€ (48)
      • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค (6)
    • ๐Ÿ“„๊ฐœ๋ฐœ ์ผ์ง€ (0)
      • FINPO (0)
    • ๐Ÿ”คํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด (71)
      • C++ ์ •๋ฆฌ (49)
      • C++๊ธฐ์ดˆํ”Œ๋Ÿฌ์Šค ์—ฐ์Šต๋ฌธ์ œ (20)
      • Kotlin (2)
    • โญProject (1)
    • ๐ŸšดTIL (13)
      • Clean Code (13)
    • ๐Ÿšฉ๊ธฐํƒ€ (9)
      • ๋ชฉํ‘œ (6)
      • ์ผ์ƒ (3)
      • ๋ฌธ์„œ (0)

์ธ๊ธฐ ๊ธ€

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
hugDog

Android DevLog

[Python/ํŒŒ์ด์ฌ] ๋ฐฑ์ค€ 2668๋ฒˆ: ์ˆซ์ž๊ณ ๋ฅด๊ธฐ
๐Ÿ”์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฐฑ์ค€

[Python/ํŒŒ์ด์ฌ] ๋ฐฑ์ค€ 2668๋ฒˆ: ์ˆซ์ž๊ณ ๋ฅด๊ธฐ

2022. 1. 16. 16:42
728x90

๋ฌธ์ œ

 

ํ’€์ด

์‚ฌ์ดํด์„ ์ฐพ๋Š” ๋ฌธ์ œ์ด๋‹ค.

์•„๋ž˜ ํ’€์ด์™€ ๊ฑฐ์˜ ๋™์ผํ•˜๋‹ค.

https://ku-hug.tistory.com/169

 

[Python] ๋ฐฑ์ค€ 9466๋ฒˆ: ํ…€ ํ”„๋กœ์ ํŠธ

๋ฌธ์ œ ํ’€์ด ์‚ฌ์ดํด์„ ํŒ๋ณ„ํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. 1. ๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ๋ฐฐ์—ด์„ parent ๋ฐฐ์—ด์ด๋ผ ํ•˜์ž. 2. ์‚ฌ์ดํด์„ ํŒ๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด ์ด๋•Œ๊นŒ์ง€ ๋ฐฉ๋ฌธํ•œ ๋…ธ๋“œ๋ฅผ cycle ๋ฐฐ์—ด์— ์ €์žฅ, ๋ฐฉ๋ฌธ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•ด visited ๋ฐฐ์—ด์„ ์ƒ

ku-hug.tistory.com

 

์ฝ”๋“œ

import sys
input = sys.stdin.readline

n = int(input())
graph = [0]
visited = [False] * (n + 1)
cycle = []
ans = []

for _ in range(n):
    graph.append(int(input()))
    
def dfs(x):
    visited[x] = True
    cycle.append(x)
    
    next = graph[x]
    if visited[next]:
        if next in cycle:
            for c in cycle[cycle.index(next):]:
                ans.append(c)
        return
    dfs(next)

for i in range(1, n + 1):
    if not visited[i]:
        cycle = []
        dfs(i)

print(len(ans))
ans.sort()
for a in ans:
    print(a)

 

๋งˆ๋ฌด๋ฆฌ

์‚ฌ์ดํด ๋ฌธ์ œ๋ฅผ ํ•œ๋ฒˆ ํŒŒ์•…ํ•ด์„œ ์‰ฝ๊ฒŒ ํ’€ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

728x90
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ (์ƒˆ์ฐฝ์—ด๋ฆผ)
    '๐Ÿ”์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฐฑ์ค€' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [Python/ํŒŒ์ด์ฌ] ๋ฐฑ์ค€ 3584๋ฒˆ: ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ณตํ†ต ์กฐ์ƒ
    • [Python/ํŒŒ์ด์ฌ] ๋ฐฑ์ค€ 2573๋ฒˆ: ๋น™์‚ฐ
    • [Python/ํŒŒ์ด์ฌ] ๋ฐฑ์ค€ 9466๋ฒˆ: ํ…€ ํ”„๋กœ์ ํŠธ
    • [Python/ํŒŒ์ด์ฌ] ๋ฐฑ์ค€ 16929๋ฒˆ: Tow Dots
    hugDog
    hugDog
    ์•ˆ๋“œ๋กœ์ด๋“œ ๊ณต๋ถ€ ์ค‘์ธ ํ•™์ƒ์ž…๋‹ˆ๋‹ค!

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”