[BOJ][๐ŸŸก2][๋ฐฑ์ค€#10711] ๋ชจ๋ž˜์„ฑ

์ž‘์„ฑ:    

์—…๋ฐ์ดํŠธ:

์นดํ…Œ๊ณ ๋ฆฌ:

ํƒœ๊ทธ: , , ,

๋ฌธ์ œ ์ถœ์ฒ˜

BAEKJOON Online Judge #10711


๋ฌธ์ œ

๋ช…์šฐ์™€ ์นœ๊ตฌ๋“ค์€ ์—ฌ๋ฆ„๋ฐฉํ•™์„ ๋งž์ดํ•˜์—ฌ ํ•ด๋ณ€๊ฐ€์— ๋†€๋Ÿฌ๊ฐ€๊ธฐ๋กœ ํ–ˆ๋‹ค. ์ด๋ฒˆ์— ์—ฌํ–‰์„ ๋– ๋‚œ ํ•ด์ˆ˜์š•์žฅ์˜ ์ด๋ฆ„์€ ALPS(Awsome Land & Poor Sea)์ด๋‹ค. ํ•ด๋ณ€๊ฐ€์—์„œ ์ˆ˜์˜๋ณต์„ ์ž…์€ ๋ฏธ๋…€๋“ค์—๊ฒŒ ๊ด€์‹ฌ์ด ๋งŽ์€ ์›์ฒ ์ด์™€๋Š” ๋‹ฌ๋ฆฌ ๋ช…์šฐ๋Š” ํ•ด๋ณ€๊ฐ€์˜ ๋ชจ๋ž˜์— ๋” ๊ด€์‹ฌ์ด ๋งŽ๋‹ค. ํ•ด๋ณ€๊ฐ€์˜ ๋ชจ๋ž˜๋Š” ๋ฌดํ•œํ•œ ๊ฒƒ๋“ค์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฐ€๋Šฅ์„ฑ์„ ๋‚ดํฌํ•˜๊ณ  ์žˆ๋‹ค. ๋˜ํ•œ ์ด๋ ‡๊ฒŒ ๋งŒ๋“ค์–ด์ง„ ์ž‘ํ’ˆ์ด ํŒŒ๋„์— ์˜ํ•ด ์‚ฌ๋ผ์ง€๋Š” ๋ชจ์Šต์€, ๋งˆ์น˜ ์ž์‹ ์ด ๊ฐ€์žฅ ๋น›๋‚  ์ˆ˜ ์žˆ๋Š” ์‹œ๊ฐ„์„ ์•Œ๊ณ  ์Šค์Šค๋กœ ์•„๋ฆ„๋‹ต๊ฒŒ ์‚ฐํ™”ํ•˜๋ ค๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ธ๋‹ค. ์ด๋Ÿฐ ์™„๋ฒฝ์— ๊ฐ€๊นŒ์šด ๋ฌผํ’ˆ์ธ ๋ชจ๋ž˜๋ฅผ ๋‘๊ณ ์„œ ํ•ด์ˆ˜์š•์ด๋‚˜ ํ—ค์—„์„ ์น˜๋Š” ๊ฒƒ์€ ์ธ์ƒ์„ ๋‚ญ๋น„ํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค. ํ•˜์ง€๋งŒ ์•„๋ฌด๋„ ๋ช…์šฐ์˜ ๋ง์— ๊ณต๊ฐํ•ด์ฃผ์ง€ ๋ชปํ–ˆ๊ณ , ๊ฒฐ๊ตญ ๋ช…์šฐ๋Š” ํ˜ผ์ž์„œ ๋ชจ๋ž˜์„ฑ์„ ๋งŒ๋“ค์—ˆ๋‹ค. ๋‹ค๋ฅธ ์นœ๊ตฌ๋“ค์ด ํ˜ผ์‹ ์˜ ํž˜์„ ๋‹คํ•ด ๋†€๊ณ ์žˆ์„ ๋•Œ ๋ช…์šฐ๋Š” ํ˜ผ์‹ ์˜ ํž˜์„ ๋‹คํ•ด ๋ชจ๋ž˜์„ฑ์„ ์Œ“์•˜๋‹ค. ์ด ๋ชจ๋ž˜์„ฑ์€ ์–ธ์  ๊ฐ„ ํŒŒ๋„์— ์˜ํ•ด์„œ ๋ฌด๋„ˆ์งˆ ํ„ฐโ€ฆ ๋ช…์šฐ๋Š” ์ด๋Ÿฐ ๋ฌด๋„ˆ์ง๋„ ์˜ˆ์ˆ ์˜ ์ผํ™˜์œผ๋กœ ์ดํ•ดํ•œ ์‚ฌ๋žŒ์ด๋ฏ€๋กœ ๋ฌด๋„ˆ์ง€๋Š” ๊ฒƒ๋„ ๊ณ ๋ คํ•ด์„œ ๋ชจ๋ž˜์„ฑ์„ ๋งŒ๋“ค์—ˆ๋‹ค. ๊ทธ๊ฐ€ ๋งŒ๋“  ๋ชจ๋ž˜์„ฑ์„ 2์ฐจ์› ๊ฒฉ์ž๋‹จ์œ„๋กœ ๋งŒ๋“ค์—ˆ์œผ๋ฉฐ, ๊ฐ ๊ฒฉ์ž๋งˆ๋‹ค ํŠผํŠผํ•จ์˜ ์ •๋„๋ฅผ ๋‹ค๋ฅด๊ฒŒ ํ•ด์„œ ์„ฑ์„ ๋งŒ๋“ค์—ˆ๋‹ค. ์ด ํŠผํŠผํ•จ์€ 1๋ถ€ํ„ฐ 9 ์‚ฌ์ด์˜ ์ˆซ์ž๋กœ ํ‘œํ˜„๋  ์ˆ˜ ์žˆ๋‹ค. ์ด ํŠผํŠผํ•จ์€, ์ž๊ธฐ ๊ฒฉ์ž ์ฃผ๋ณ€์˜ 8๋ฐฉํ–ฅ (์œ„ ์•„๋ž˜ ์™ผ์ชฝ ์˜ค๋ฅธ์ชฝ, ๊ทธ๋ฆฌ๊ณ  ๋Œ€๊ฐ์„ ) ์„ ๋ด์„œ ๋ชจ๋ž˜์„ฑ์ด ์Œ“์—ฌ์žˆ์ง€ ์•Š์€ ๋ถ€๋ถ„์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ž๊ธฐ ๋ชจ๋ž˜์„ฑ์˜ ํŠผํŠผํ•จ๋ณด๋‹ค ๋งŽ๊ฑฐ๋‚˜ ๊ฐ™์€ ๊ฒฝ์šฐ ํŒŒ๋„์— ์˜ํ•ด์„œ ๋ฌด๋„ˆ์งˆ ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•œ๋‹ค. ๊ทธ ์ด์™ธ์˜ ๊ฒฝ์šฐ๋Š” ํŒŒ๋„๊ฐ€ ์ณ๋„ ๋ฌด๋„ˆ์ง€์ง€ ์•Š๋Š”๋‹ค. ๋ชจ๋ž˜์„ฑ์ด ๋ฌด๋„ˆ์ง„ ๊ฒฝ์šฐ, ๊ทธ ๊ฒฉ์ž๋Š” ๋ชจ๋ž˜์„ฑ์ด ์Œ“์—ฌ์žˆ์ง€ ์•Š์€ ๊ฒƒ์œผ๋กœ ์ทจ๊ธ‰ํ•œ๋‹ค. ์ด ๋ชจ๋ž˜์„ฑ์€ ์–ธ์  ๊ฐ€๋Š” ํŒŒ๋„์— ์˜ํ•ด์„œ ๊นŽ์ด๊ณ  ๊นŽ์—ฌ์„œ, ๊ฒฐ๊ตญ ํ•œ๊ฐ€์ง€ ํ˜•ํƒœ๋กœ ์ˆ˜๋ ดํ•  ๊ฒƒ์ด๋‹ค. ๋ชจ๋ž˜์„ฑ์„ ์™„์„ฑํ•œ ๋ช…์šฐ๋Š” ๋ฌธ๋“ ์ž์‹ ์ด ๋งŒ๋“  ์˜ˆ์ˆ ํ’ˆ์˜ ์ˆ˜๋ช…์ด ๊ถ๊ธˆํ•ด์กŒ๋‹ค. ๋ชจ๋ž˜์„ฑ์€ ์œ„์— ์„œ์ˆ ํ•œ ๋ฐ”์™€ ๊ฐ™์ด ํŒŒ๋„๊ฐ€ ํ•œ๋ฒˆ ์น  ๋•Œ๋งˆ๋‹ค ํŠน์ • ๋ถ€๋ถ„์ด ๋ฌด๋„ˆ์ €๋‚ด๋ฆฌ๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ชจ์–‘์ด ๋ณ€ํ™”๋œ๋‹ค. ๋ชจ๋ž˜์„ฑ์ด ๋”์ด์ƒ ๋ชจ์–‘์ด ๋ณ€ํ•˜์ง€ ์•Š๊ฒŒ ๋˜๋ ค๋ฉด (๋ชจ์–‘์ด ์ˆ˜๋ ด๋˜๋ ค๋ฉด) ํŒŒ๋„๊ฐ€ ๋ช‡๋ฒˆ ์ณ์•ผํ•˜๋Š”์ง€ ๊ตฌํ•ด๋ณด์ž.


์ž…๋ ฅ

์ฒซ์งธ ์ค„์—๋Š” ๋ชจ๋ž˜์„ฑ์˜ ๊ฐ€๋กœ์„ธ๋กœ ๊ฒฉ์ž ํฌ๊ธฐ H, W๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 โ‰ค H, W โ‰ค 1,000) ๊ทธ ๋‹ค์Œ H์ค„์— ๊ฑธ์ณ W๊ฐœ์˜ ๋ฌธ์ž๋กœ ๋ชจ๋ž˜์„ฑ์˜ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฌธ์ž๊ฐ€ ๋“ค์–ด์˜จ๋‹ค. ๊ฐ ๋ฌธ์ž๋Š” 1~9 ์‚ฌ์ด์˜ ์ˆซ์ž, ๋˜๋Š” โ€˜.โ€™ ์ด๋‹ค. 1~9๋Š” ๊ทธ ๊ฒฉ์ž์˜ ๋ชจ๋ž˜์˜ ๊ฐ•๋„๋ฅผ ๋‚˜ํƒ€๋‚ด๋ฉฐ, โ€˜.โ€™๋Š” ๋ชจ๋ž˜๊ฐ€ ์—†๋‹ค๋Š” ๋œป์ด๋‹ค. ๋ชจ๋ž˜์„ฑ์€ ๊ฒฉ์ž์˜ ๊ฐ€์žฅ์ž๋ฆฌ์™€ ์ ‘ํ•ด ์žˆ์ง€ ์•Š๋‹ค.


์ถœ๋ ฅ

๋ช‡๋ฒˆ์˜ ํŒŒ๋„๊ฐ€ ๋ชฐ๋ ค์˜ค๊ณ ๋‚˜์„œ์•ผ ๋ชจ๋ž˜์„ฑ์˜ ์ƒํƒœ๊ฐ€ ์ˆ˜๋ ดํ•˜๋Š”์ง€๋ฅผ ๊ตฌํ•œ๋‹ค.


์˜ˆ์ œ

์˜ˆ์ œ 1

์ž…๋ ฅ

5 6
......
.939..
.3428.
.9393.
......


์ถœ๋ ฅ

3


์˜ˆ์ œ 2

์ž…๋ ฅ

10 10
..........
.99999999.
.9.323239.
.91444449.
.91444449.
.91444449.
.91444449.
.91232329.
.99999999.
..........


์ถœ๋ ฅ

35


My Sol

I, J = map(int, input().split())
mat = [list(map(lambda x: (x if x=='.' else int(x)), input())) for _ in range(I)]
cass = [[[0xfff, 0] for _ in range(J)] for _ in range(I)]

# ์ตœ์ดˆ ๋†’์ด ๊ณ„์‚ฐ
Q = set()
ql = 0
for i in range(I):
    for j in range(J):
        if mat[i][j]!='.':
            cass[i][j][0] = int(mat[i][j])
            Q.add((i, j))
            ql += 1


# ๋ชจ๋‘ ๋ชจ๋ž˜๋ผ๋ฉด 0 ์ถœ๋ ฅ
if not Q:
    print(0)
    quit()

# ์ตœ์ดˆ removeSet ํ™•์ธ
removeSet = set()
while Q:
    ni, nj = Q.pop()
    cnt = 0
    for di in range(-1, 2):
        for dj in range(-1, 2):
            si, sj = ni+di, nj+dj
            if mat[si][sj]=='.':
                cnt += 1

    cass[ni][nj][1] = cnt
    if cnt >= cass[ni][nj][0]:
        removeSet.add((ni, nj))

wave = 0
while removeSet:
    removeSet2 = removeSet
    removeSet = set()
    while removeSet2:
        ni, nj = removeSet2.pop()
        mat[ni][nj] = '.'

        for di in range(-1, 2):
            for dj in range(-1, 2):
                si, sj = ni+di, nj+dj
                if mat[si][sj]=='.': continue
                cass[si][sj][1] += 1

                if cass[si][sj][0] == cass[si][sj][1]:

                    removeSet.add((si, sj))

    wave += 1

print(wave)

BFS๋ฅผ ๊ทนํ•œ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค. ๋ฐ˜๋ณต๋˜๋Š” ์ฝ”๋“œ๊ฐ€ ์ผ๋ถ€ ์žˆ๋Š”๋ฐ, ๊ฒฝ์šฐ๋ฅผ ๋‚˜๋ˆ„๊ธฐ ์œ„ํ•ด์„œ ๋ถˆ๊ฐ€ํ”ผํ–ˆ๋‹ค. ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๊ฐ€ ํฌ๊ธฐ ๋•Œ๋ฌธ์— ์ ์ด ์•„๋‹Œ ์ˆซ์ž๊ฐ€ ์žˆ๋Š” ์ขŒํ‘œ์— ๋Œ€ํ•ด ํ•ด๋‹น ์ขŒํ‘œ์˜ ๊ฐ’๊ณผ, ์ฃผ๋ณ€์˜ ์ ์˜ ๊ฐœ์ˆ˜๋ฅผ ์„ธ์—ˆ๊ณ , ์ด ์ฃผ๋ณ€์˜ ์ ์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ฒ˜์Œ์— ์ขŒํ‘œ์˜ ๊ฐ’๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™์œผ๋ฉด ๋‹ค์Œ ํŒŒ๋„์—์„œ ์ œ๊ฑฐ ๋Œ€์ƒ์ด๋ฏ€๋กœ removeSet์— ์ขŒํ‘œ๋ฅผ ๋„ฃ์–ด์ค€๋‹ค. ๋งŒ์•ฝ ์ฒ˜์Œ์— ๋ชจ๋“  ์ขŒํ‘œ์— ๋Œ€ํ•ด ํƒ์ƒ‰ํ–ˆ๋Š”๋ฐ, ๊ฐ’์ด ๋ชจ๋‘ ., ์ฆ‰ ๋ชจ๋ž˜์„ฑ์ด ์—†๋‹ค๋ฉด 0์„ ์ถœ๋ ฅํ•˜๋„๋ก ์ดˆ๊ธฐ ์„ค์ •ํ•˜์˜€๊ณ , ๋ชจ๋ž˜์„ฑ์ด ์žˆ๋”๋ผ๋„ ๋ณ€ํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด removeSet์ด ๋นˆ set์ด ๋˜๋ฏ€๋กœ while์„ ํ†ต๊ณผํ•˜์ง€ ์•Š๊ณ  ๋ฐ”๋กœ wave 0์„ ์ถœ๋ ฅํ•˜๊ฒŒ ๋œ๋‹ค.

while ๋ฌธ์˜ ๋ฐ˜๋ณต์€, ์ด์ „ ํŒŒ๋„์—์„œ ์–ด๋–ป๊ฒŒ๋“  ๋ถ€์„œ์ง€๋Š” ๋ชจ๋ž˜์„ฑ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์‹คํ–‰๋˜๋Š”๋ฐ, ํ•ด๋‹น ์ œ๊ฑฐ ๋Œ€์ƒ์˜ ์ขŒํ‘œ๋ฅผ .์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๊ณ , ํŒ”๋ฐฉ์˜ ํƒ์ƒ‰ ์ขŒํ‘œ์— ๋Œ€ํ•ด ํƒ์ƒ‰ ์ขŒํ‘œ๊ฐ€ .์ด๋ผ๋ฉด continueํ•œ๋‹ค. ๋งŒ์•ฝ ์ œ๊ฑฐ ๋Œ€์ƒ์˜ ์ฃผ๋ณ€ ํŒ”๋ฐฉ์— ๋ชจ๋ž˜์„ฑ์ด ์žˆ๋‹ค๋ฉด, ํ•ด๋‹น ๋ชจ๋ž˜์„ฑ์—๊ฒŒ๋„ ์ฃผ๋ณ€์˜ ๋ชจ๋ž˜์„ฑ์ด ํ•˜๋‚˜ ์ œ๊ฑฐ๋˜๋Š” ๊ฒƒ์ด๋ฏ€๋กœ, ์ด๋ฅผ ๊ฐ’์„ 1 ์ถ”๊ฐ€ํ•ด์ค€๋‹ค. ์ƒ๊ฐํ•ด๋ณด๋‹ˆ ๊ฐ’์„ ํ•˜๋‚˜์”ฉ ์ค„์—ฌ๊ฐ€๋ฉด ์–ด๋• ์„๊นŒ ์‹ถ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋‚ญ๋น„ํ•˜๊ฒŒ ๋˜์—ˆ์ง€๋งŒ ์–ด์จ‹๋“  ๊ธฐ๋Šฅ์€ ํ•œ๋‹ค.

๊ทธ๋™์•ˆ ๋ฐ˜๋ณต ๋‚ด์˜ cass๋Š” ์„ฑ์˜ ๊ฒฌ๊ณ ํ•จ์ด ํ•ญ์ƒ ์ฃผ๋ณ€์˜ ๋ชจ๋ž˜ ๊ฐœ์ˆ˜๋ณด๋‹ค ๋งŽ์€๋ฐ, ์ œ๊ฑฐ ๋Œ€์ƒ์˜ ๋ชจ๋ž˜์„ฑ์ด ์‚ญ์ œ๋˜๋ฉด์„œ ๋ชจ๋ž˜์–‘์ด ๋Š˜์–ด์„œ ์„ฑ์˜ ๊ฒฌ๊ณ ํ•จ๊ณผ ๊ฐ™๊ฒŒ ๋œ๋‹ค๋ฉด, ํ•ด๋‹น ํƒ์ƒ‰์ขŒํ‘œ๋ฅผ removeSet์— ์ถ”๊ฐ€ํ•˜๊ณ  ๋‹ค์Œ wave ๋•Œ ์ œ๊ฑฐํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ removeSet์ด ์ฑ„์›Œ์ง€์ง€ ์•Š๋Š”, ์ฆ‰ wave์—๋„ ์ œ๊ฑฐ ๋Œ€์ƒ์ด ์—†๋‹ค๋ฉด wave๋ฅผ ์ถœ๋ ฅํ•˜๋ฉด ๋˜๊ฒ ๋‹ค.


๊ฒฐ๊ณผ

๋งž์•˜์Šต๋‹ˆ๋‹ค!!


๋ชจ๋ฒ”๋‹ต์•ˆ

์ถœ์ฒ˜

import sys
from collections import deque
input = sys.stdin.readline

dydx = [(-1, -1), (-1, 0), (-1, 1), (0, 1), (1, 1), (1, 0), (1, -1), (0, -1)]

H, W = map(int, input().split())
board = []
q = deque()
for i in range(H):
    board.append(list(input().rstrip()))
    for j in range(W):
        if board[i][j] == ".":
            q.append((0, i, j))
            board[i][j] = 0
        else:
            board[i][j] = int(board[i][j])

while q:
    t, y, x = q.popleft()
    for dy, dx in dydx:
        ny, nx = y+dy, x+dx
        if 0 <= ny < H and 0 <= nx < W:
            board[ny][nx] -= 1
            if board[ny][nx] == 0:
                q.append((t+1, ny, nx))
print(t)

์ฑ„์  ํ˜„ํ™ฉ์—์„œ ์‹œ๊ฐ„์ ์œผ๋กœ๋‚˜, ๋ฉ”๋ชจ๋ฆฌ์ ์œผ๋กœ ํšจ์œจ์ ์ธ ์ฝ”๋“œ๋ฅผ ์ฐพ์•„ ๋ถ„์„ํ•œ๋‹ค. set ๋Œ€์‹  q๋ฅผ ์‚ฌ์šฉํ•˜๋‹ค. ์ค‘๋ณต ์ขŒํ‘œ๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— deque์ธ q๋ฅผ ์‚ฌ์šฉํ•ด๋„ ๊ดœ์ฐฎ์„ ๊ฒƒ์ด๋‹ค. ์œ„์—์„œ ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ํ•˜๋ฉด์„œ ๋Š๊ผˆ๋˜ ๊ฐ’์„ ๋‚ด๋ฆฌ๋Š” ๊ฑด ์–ด๋–จ๊นŒ ์‹ถ์—ˆ๋Š”๋ฐ, ๋”ฑ ๊ทธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์˜€๋‹ค. ๊ทธ๋ฆฌ๊ณ  sys.stdin.readline์„ ๋‚˜๋„ ์‚ฌ์šฉํ–ˆ๋‹ค๊ฐ€ ValueError ๋ฐœ์ƒ์œผ๋กœ ์ง€์›Œ์ฃผ์—ˆ๋Š”๋ฐ, ์ด ๋ถ„์€ ์‚ฌ์šฉ์ด ๋๋‚˜๋ณด๋‹ค. ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๊ฐ€ ํฌ๋ฏ€๋กœ, ์ด ์—ญ์‹œ ์˜ํ–ฅ์„ ์ฃผ์—ˆ์„ ๊ฒƒ์ด๋‹ค.

๋‚˜๋Š” wave๋กœ ์•„์˜ˆ ์นด์šดํŠธ๋ฅผ ํ–ˆ๋Š”๋ฐ, ์ด ๋ถ„์€ ์ขŒํ‘œ์— ๋Œ€ํ•ด์„œ ์นด์šดํŠธ๋ฅผ t์— ๋„ฃ์–ด์ฃผ์—ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ๋ชจ๋“  q์˜ ์š”์†Œ์— ๋Œ€ํ•ด t๊ฐ€ ๋งค๋ฒˆ ๊ฐฑ์‹ ๋˜๋‹ค๊ฐ€ q๊ฐ€ ๋ฐ”๋‹ฅ๋‚˜๋ฉด ๋งˆ์ง€๋ง‰ q ์š”์†Œ์˜ t๊ฐ€ ์ตœ๋Œ€๋กœ ํŒŒ๋„๊ฐ€ ์นœ ํšŸ์ˆ˜์ด๋ฏ€๋กœ, ์ด๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ƒ๋‹นํžˆ ์ž˜ ์ง  ์ฝ”๋“œ์ธ ๊ฒƒ ๊ฐ™๋‹ค.

๋Œ“๊ธ€๋‚จ๊ธฐ๊ธฐ