[๋ฐฑ์ค€] 2653๋ฒˆ: ์•ˆ์ •๋œ ์ง‘๋‹จ - ํŒŒ์ด์ฌ

2022. 11. 16. 02:15ยท ๐Ÿ”ฅ Algorithm/๋ฐฑ์ค€
๋ชฉ์ฐจ
  1. ๋ฌธ์ œ
  2. ํ•ด์„ค
  3. ํ’€์ด

๋ฌธ์ œ

https://www.acmicpc.net/problem/2653

 

2653๋ฒˆ: ์•ˆ์ •๋œ ์ง‘๋‹จ

์ฃผ์–ด์ง„ ์ž…๋ ฅ์ด ์•ˆ์ •๋˜์ง€ ์•Š์€ ์ง‘๋‹จ์˜ ๊ฒฝ์šฐ๋Š” ์ฒซ์ค„์— ๋นˆ์นธ ์—†์ด 0์„ ์ถœ๋ ฅํ•œ๋‹ค. ์•ˆ์ •๋œ ์ง‘๋‹จ์˜ ๊ฒฝ์šฐ๋Š” ์ฒซ์ค„์— ์„œ๋กœ ์ข‹์•„ํ•˜๋Š” ์†Œ์ง‘๋‹จ์˜ ์ˆ˜๋ฅผ ๋นˆ์นธ ์—†์ด ์ถœ๋ ฅํ•˜๊ณ , ๊ทธ ๋‹ค์Œ ์ค„๋ถ€ํ„ฐ๋Š” ๊ฐ ์ค„๋งˆ๋‹ค ๊ฐ ์†Œ

www.acmicpc.net

 

ํ•ด์„ค

๋ฌธ์ œ ์„ค๋ช…๊ณผ ์กฐ๊ฑด์ด ๋ณต์žกํ•˜๊ณ  ๊ธธ๊ฒŒ ์„ค๋ช…๋˜์–ด ์žˆ๋Š”๋ฐ, ํ•ต์‹ฌ์€ ๊ฐ„๋‹จํ•˜๋‹ค.

 

  1. ์‚ฌ๋žŒ ๊ฐ„์˜ ์šฐํ˜ธ๋„๊ฐ€ ๋‹ค๋ฅด๋ฉด ๋ถˆ์•ˆ์ •ํ•œ ์ง‘๋‹จ์ด๋‹ค.

์ด ๋ถ€๋ถ„์„ ๊ฐ„์ ‘์ ์œผ๋กœ ํ‘œํ˜„ํ•˜๊ณ  ์žˆ๋Š”๋ฐ, ์„œ๋กœ ์ข‹์•„ํ•˜๋Š” ์‚ฌ๋žŒ๋ผ๋ฆฌ ๊ทธ๋ฃน์„ ๋‚˜๋ˆ„๋ฉด ์•ˆ์ •๋œ ์ง‘๋‹จ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š”๋ฐ ์„œ๋กœ์˜ ์šฐํ˜ธ๋„๊ฐ€ ๋‹ค๋ฅด๋ฉด ๊ทธ๋ฃน์„ ๋‚˜๋ˆŒ ์ˆ˜๊ฐ€ ์—†๋‹ค.

 

  2. DFS๋กœ ํƒ์ƒ‰ํ•˜๋ฉด์„œ ๊ทธ๋ฃนํ™”ํ•˜๊ณ  ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅํ•œ๋‹ค.

ํ•œ ๋ฒˆ์˜ DFS ํƒ์ƒ‰์—์„œ ์ฐพ์•„์ง€๋Š” ์‚ฌ๋žŒ์€ ๊ฐ™์€ ๊ทธ๋ฃน์ด๋‹ค.

ํ’€์ด

import sys; readline = sys.stdin.readline

n = int(readline())
relation = [list(map(int, readline().split())) for _ in range(n)]

stable = True
for i in range(n):
    for j in range(i + 1, n):
        if relation[i][j] != relation[j][i]:
            stable = False
            break
    if not stable: break

visited = [False] * n
group = []
count = 0
for i in range(n):
    if visited[i]:
        continue

    visited[i] = True
    count += 1
    group.append([i+1])
    g_index = count - 1
    for j in range(n):
        if relation[i][j] != 0 or i == j:
            continue

        group[g_index].append(j+1)
        visited[j] = True

for g in group:
    if len(g) < 2:
        stable = False
        break

if stable:
    print(count)
    for g in group:
        print(*g)
else:
    print(0)

'๐Ÿ”ฅ Algorithm > ๋ฐฑ์ค€' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[๋ฐฑ์ค€] 14215๋ฒˆ: ์„ธ ๋ง‰๋Œ€ - ํŒŒ์ด์ฌ  (0) 2022.11.16
  1. ๋ฌธ์ œ
  2. ํ•ด์„ค
  3. ํ’€์ด
'๐Ÿ”ฅ Algorithm/๋ฐฑ์ค€' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [๋ฐฑ์ค€] 14215๋ฒˆ: ์„ธ ๋ง‰๋Œ€ - ํŒŒ์ด์ฌ
sckwon770
sckwon770
sckwon770
sckwon770
sckwon770
์ „์ฒด
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (58)
    • ๐Ÿš€ Activity (6)
      • Project (5)
      • Experience (1)
    • ๐Ÿค– Backend (28)
      • Linux (1)
      • SpringBoot (15)
      • Database (7)
      • Web (2)
      • Cloud (2)
      • Test (1)
    • ๐Ÿ›  ๊ฐœ๋ฐœ์ž (1)
      • ํšŒ๊ณ  (0)
      • ๋…์„œ (1)
    • ๐Ÿ”ฅ Algorithm (5)
      • ๋ฐฑ์ค€ (2)
      • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค (1)
      • PS (1)
    • ๐Ÿ‘พ CS (0)
    • Python (2)
      • Programming (0)
      • PS Skills (0)
    • Csharp (15)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • ํƒœ๊ทธ
  • ๋ฐฉ๋ช…๋ก

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • ํ…Œ์ŠคํŠธ
  • ThreadPoolTaskExecutor
  • ์ธ๋ฑ์Šค
  • TSID
  • SSH
  • Python
  • springboot
  • C#
  • WPF
  • ํŒŒ์ด์ฌ
  • SWAGGER
  • java
  • jacoco
  • algorithm
  • ๋ฆฌ๋ทฐ๋ฉ”์ดํŠธ
  • JPA
  • CS
  • Hibernate
  • ULID
  • mysql

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

์ตœ๊ทผ ๊ธ€

hELLO ยท Designed By ์ •์ƒ์šฐ.v4.2.2
sckwon770
[๋ฐฑ์ค€] 2653๋ฒˆ: ์•ˆ์ •๋œ ์ง‘๋‹จ - ํŒŒ์ด์ฌ
์ƒ๋‹จ์œผ๋กœ

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

๋‹จ์ถ•ํ‚ค

๋‚ด ๋ธ”๋กœ๊ทธ

๋‚ด ๋ธ”๋กœ๊ทธ - ๊ด€๋ฆฌ์ž ํ™ˆ ์ „ํ™˜
Q
Q
์ƒˆ ๊ธ€ ์“ฐ๊ธฐ
W
W

๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๊ธ€

๊ธ€ ์ˆ˜์ • (๊ถŒํ•œ ์žˆ๋Š” ๊ฒฝ์šฐ)
E
E
๋Œ“๊ธ€ ์˜์—ญ์œผ๋กœ ์ด๋™
C
C

๋ชจ๋“  ์˜์—ญ

์ด ํŽ˜์ด์ง€์˜ URL ๋ณต์‚ฌ
S
S
๋งจ ์œ„๋กœ ์ด๋™
T
T
ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ ์ด๋™
H
H
๋‹จ์ถ•ํ‚ค ์•ˆ๋‚ด
Shift + /
โ‡ง + /

* ๋‹จ์ถ•ํ‚ค๋Š” ํ•œ๊ธ€/์˜๋ฌธ ๋Œ€์†Œ๋ฌธ์ž๋กœ ์ด์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ํ‹ฐ์Šคํ† ๋ฆฌ ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์—์„œ๋งŒ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.