• ๋‚œ์ด๋„:ย โ—โ—‹โ—‹ |ย ํ’€์ด ์‹œ๊ฐ„:ย 20๋ถ„ |ย ์‹œ๊ฐ„ ์ œํ•œ:ย 2์ดˆ |ย ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ:ย 128MB |ย ๊ธฐ์ถœ:ย ๊ตญ์ œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋Œ€ํšŒ

    ๋ฌธ์ œ:ย ๋™๋นˆ์ด๋Š” ๋‘ ๊ฐœ์˜ ๋ฐฐ์—ด A์™€ B๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๋‘ ๋ฐฐ์—ด์€ N๊ฐœ์˜ ์›์†Œ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ, ๋ฐฐ์—ด์˜ ์›์†Œ๋Š” ๋ชจ๋‘ ์ž์—ฐ์ˆ˜์ด๋‹ค. ๋™๋นˆ์ด๋Š” ์ตœ๋Œ€ K๋ฒˆ์˜ ๋ฐ”๊ฟ”์น˜๊ธฐ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ๋ฐ”๊ฟ”์น˜๊ธฐ ์—ฐ์‚ฐ์ด๋ž€ ๋ฐฐ์—ด A์— ์žˆ๋Š” ์›์†Œ ํ•˜๋‚˜์™€ ๋ฐฐ์—ด B์— ์žˆ๋Š” ์›์†Œ ํ•˜๋‚˜๋ฅผ ๊ณจ๋ผ์„œ ๋‘ ์›์†Œ๋ฅผ ์„œ๋กœ ๋ฐ”๊พธ๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. ๋™๋นˆ์ด์˜ ์ตœ์ข… ๋ชฉํ‘œ๋Š” ๋ฐฐ์—ด A์˜ ๋ชจ๋“  ์›์†Œ์˜ ํ•ฉ์ด ์ตœ๋Œ€๊ฐ€ ๋˜๋„๋ก ํ•˜๋Š” ๊ฒƒ์ด๋ฉฐ, ์—ฌ๋Ÿฌ๋ถ„์€ ๋™๋นˆ์ด๋ฅผ ๋„์™€์•ผ ํ•œ๋‹ค.
    N, K, ๊ทธ๋ฆฌ๊ณ  ๋ฐฐ์—ด A์™€ B์˜ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ตœ๋Œ€ K๋ฒˆ์˜ ๋ฐ”๊ฟ”์น˜๊ธฐ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์—ด A์˜ ๋ชจ๋“  ์›์†Œ์˜ ํ•ฉ์˜ ์ตœ๋Œ“๊ฐ’์„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

    ์ž…๋ ฅ ์กฐ๊ฑด:
    – ์ฒซ ๋ฒˆ์งธ ์ค„์— N, K๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ์ž…๋ ฅ๋œ๋‹ค. (1 โ‰ฆ N โ‰ฆ 100,000, 0 โ‰ฆ K โ‰ฆ N)
    – ๋‘ ๋ฒˆ์งธ ์ค„์— ๋ฐฐ์—ด A์˜ ์›์†Œ๋“ค์ด ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ์ž…๋ ฅ๋œ๋‹ค. ๋ชจ๋“  ์›์†Œ๋Š” 10,000,000๋ณด๋‹ค ์ž‘์€ ์ž์—ฐ์ˆ˜์ด๋‹ค.
    – ์„ธ ๋ฒˆ์งธ ์ค„์— ๋ฐฐ์—ด B์˜ ์›์†Œ๋“ค์ด ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ์ž…๋ ฅ๋œ๋‹ค. ๋ชจ๋“  ์›์†Œ๋Š” 10,000,000๋ณด๋‹ค ์ž‘์€ ์ž์—ฐ์ˆ˜์ด๋‹ค.
    ์ถœ๋ ฅ ์กฐ๊ฑด:
    – ์ตœ๋Œ€ K๋ฒˆ์˜ ๋ฐ”๊ฟ”์น˜๊ธฐ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์—ด A์˜ ๋ชจ๋“  ์›์†Œ์˜ ํ•ฉ์˜ ์ตœ๋Œ“๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค.
    ์ž…๋ ฅ ์˜ˆ์‹œ)
    5 3
    1 2 5 4 3
    5 5 6 6 5
    ์ถœ๋ ฅ ์˜ˆ์‹œ)
    26

    ๋ฌธ์ œ ํ’€์ด)

    ์ด ๋ฌธ์ œ๋Š” ๋ณด์ž๋งˆ์ž ์•ž ์„ค๋ช…์—์„œ ๋ณธ swap์„ ์‚ฌ์šฉํ•˜๋ฉด ๋˜๊ฒ ๊ตฌ๋‚˜ ๋ฐ”๋กœ ๋– ์˜ฌ๋ ธ๋‹ค.
    ๊ทธ๋Ÿฐ๋ฐ, A์˜ ํ•ฉ์ด ์ตœ๋Œ€๊ฐ€ ๋˜์–ด์•ผ ํ•˜๋ฏ€๋กœ, A์—์„œ ๊ฐ€์žฅ ์ž‘์€ ๊ฒƒ๊ณผ B์—์„œ ๊ฐ€์žฅ ํฐ ๊ฒƒ์„ ๊ณ„์†ํ•ด์„œ ๋ฐ”๊ฟ”์•ผํ•œ๋‹ค (A์˜ ๋ชจ๋“  ์ˆ˜๊ฐ€ B์˜ ๋ชจ๋“  ์ˆ˜๋ณด๋‹ค ๋ฌด์กฐ๊ฑด ์ปค์•ผํ•˜๊ฒŒ) ๊ทธ๊ฑธ K๋ฒˆ ๋ฐ˜๋ณตํ•œ๋‹ค.
    ๊ทธ๋Ÿฌ๋ฉด ์ผ๋‹จ, A๋Š” ์˜ค๋ฆ„์ฐจ์ˆœ, B๋Š” ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•ด๋‘๊ณ  ์•ž์—์„œ๋ถ€ํ„ฐ ์ˆœ์„œ๋Œ€๋กœ ๋ฐ”๊พธ๊ธฐ๋งŒ ํ•˜๋ฉด ๋œ๋‹ค.

    n, k = map(int, input().split())
    a = list(map(int, input().split()))
    b = list(map(int, input().split()))
    # A๋Š” ์˜ค๋ฆ„์ฐจ์ˆœ, B๋Š” ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ
    a.sort()
    b.sort(reverse=True)
    # K๋ฒˆ ๋ฐ”๊ฟ”์น˜๊ธฐ
    for i in range(k):
    if a[i] < b[i]: # A์˜ ์ž‘์€ ๊ฐ’๋ณด๋‹ค B์˜ ํฐ ๊ฐ’์ด ๋” ํฌ๋‹ค๋ฉด,
    a[i], b[i] = b[i], a[i] # A์™€ B์˜ ์›์†Œ๋ฅผ ๊ต์ฒด(swap)
    else: # A์˜ ์ž‘์€ ๊ฐ’์ด B์˜ ํฐ ๊ฐ’๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๋‹ค๋ฉด, ๋ฉˆ์ถค
    break
    print(sum(a)) # A์˜ ๋ชจ๋“  ์›์†Œ์˜ ํ•ฉ์„ ์ถœ๋ ฅ

    ์ด๊ฑธ ์‹ค์ œ๋กœ ์ž…๋ ฅ ์˜ˆ์‹œ๋ฅผ ์ž…๋ ฅํ•ด๋ณด๋ฉด, ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

    ์ฑ…์˜ ๋‹ต๋„ ๋˜‘๊ฐ™์•˜๋‹ค.

    n, k = map(int, input().split()) # N๊ณผ K๋ฅผ ์ž…๋ ฅ๋ฐ›๊ธฐ
    a = list(map(int, input().split())) # ๋ฐฐ์—ด A์˜ ๋ชจ๋“  ์›์†Œ๋ฅผ ์ž…๋ ฅ๋ฐ›๊ธฐ
    b = list(map(int, input().split())) # ๋ฐฐ์—ด B์˜ ๋ชจ๋“  ์›์†Œ๋ฅผ ์ž…๋ ฅ๋ฐ›๊ธฐ
    a.sort() # ๋ฐฐ์—ด A๋Š” ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ ์ˆ˜ํ–‰
    b.sort(reverse=True) # ๋ฐฐ์—ด B๋Š” ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ ์ˆ˜ํ–‰
    # ์ฒซ ๋ฒˆ์งธ ์ธ๋ฑ์Šค๋ถ€ํ„ฐ ํ™•์ธํ•˜๋ฉฐ, ๋‘ ๋ฐฐ์—ด์˜ ์›์†Œ๋ฅผ ์ตœ๋Œ€ K๋ฒˆ ๋น„๊ต
    for i in range(k):
    # A์˜ ์›์†Œ๊ฐ€ B์˜ ์›์†Œ๋ณด๋‹ค ์ž‘์€ ๊ฒฝ์šฐ
    if a[i] < b[i]:
    a[i], b[i] = b[i], a[i]
    else: # A์˜ ์›์†Œ๊ฐ€ B์˜ ์›์†Œ๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™์„ ๋•Œ, ๋ฐ˜๋ณต๋ฌธ์„ ํƒˆ์ถœ
    break
    print(sum(a)) # ๋ฐฐ์—ด A์˜ ๋ชจ๋“  ์›์†Œ์˜ ํ•ฉ์„ ์ถœ๋ ฅ
  • ๋‚œ์ด๋„:ย โ—โ—‹โ—‹ |ย ํ’€์ด ์‹œ๊ฐ„:ย 20๋ถ„ |ย ์‹œ๊ฐ„ ์ œํ•œ:ย 1์ดˆ |ย ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ:ย 128MB |ย ๊ธฐ์ถœ:ย D ๊ธฐ์—… ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ฝ˜ํ…Œ์ŠคํŠธ ์˜ˆ์„ 

    ๋ฌธ์ œ:ย N๋ช…์˜ ํ•™์ƒ ์ •๋ณด๊ฐ€ ์žˆ๋‹ค. ํ•™์ƒ ์ •๋ณด๋Š” ํ•™์ƒ์˜ ์ด๋ฆ„๊ณผ ํ•™์ƒ์˜ ์„ฑ์ ์œผ๋กœ ๊ตฌ๋ถ„๋œ๋‹ค. ๊ฐ ํ•™์ƒ์˜ ์ด๋ฆ„๊ณผ ์„ฑ์  ์ •๋ณด๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ ์„ฑ์ ์ด ๋‚ฎ์€ ์ˆœ์„œ๋Œ€๋กœ ํ•™์ƒ์˜ ์ด๋ฆ„์„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

    ์ž…๋ ฅ ์กฐ๊ฑด:
    – ์ฒซ ๋ฒˆ์งธ ์ค„์— ํ•™์ƒ์˜ ์ˆ˜ N์ด ์ž…๋ ฅ๋œ๋‹ค. (1 โ‰ฆ N โ‰ฆ 500)
    – ๋‘ ๋ฒˆ์งธ ์ค„๋ถ€ํ„ฐ N + 1๋ฒˆ์งธ ์ค„์—๋Š” ํ•™์ƒ์˜ ์ด๋ฆ„์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฌธ์ž์—ด A์™€ ํ•™์ƒ์˜ ์„ฑ์ ์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜ B๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ์ž…๋ ฅ๋œ๋‹ค. ๋ฌธ์ž์—ด A์˜ ๊ธธ์ด์™€ ํ•™์ƒ์˜ ์„ฑ์ ์€ 100 ์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๋‹ค.
    ์ถœ๋ ฅ ์กฐ๊ฑด:
    – ๋ชจ๋“  ํ•™์ƒ์˜ ์ด๋ฆ„์„ ์„ฑ์ ์ด ๋‚ฎ์€ ์ˆœ์„œ๋Œ€๋กœ ์ถœ๋ ฅํ•œ๋‹ค. ์„ฑ์ ์ด ๋™์ผํ•œ ํ•™์ƒ๋“ค์˜ ์ˆœ์„œ๋Š” ์ž์œ ๋กญ๊ฒŒ ์ถœ๋ ฅํ•ด๋„ ๊ดœ์ฐฎ๋‹ค.
    ์ž…๋ ฅ ์˜ˆ์‹œ)
    2
    ํ™๊ธธ๋™ 95
    ์ด์ˆœ์‹  77
    ์ถœ๋ ฅ ์˜ˆ์‹œ)
    ์ด์ˆœ์‹  ํ™๊ธธ๋™

    ๋ฌธ์ œ ํ’€์ด)

    ์„ฑ์ ์ด ๋‚ฎ์€ ์ˆœ์„œ๋Œ€๋กœ ์ด๋ฆ„์„ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ๋‹ค. ์ง€๋‚œ๋ฒˆ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ์ด๋ž‘ ๋น„์Šทํ•œ๋ฐ, ์ด๋ฒˆ์—” ์ˆซ์ž๋งŒ ์ •๋ ฌํ•˜๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ ์ด๋ฆ„์ด๋ž‘ ์„ฑ์ ์„ ๋ฌถ์–ด์„œ ๊ด€๋ฆฌํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒŒ ํฌ์ธํŠธ๋‹ค.
    ์ž…๋ ฅ์„ ๋ณด๋ฉด ํ™๊ธธ๋™ 95 ์ฒ˜๋Ÿผ ์ด๋ฆ„๊ณผ ์„ฑ์ ์ด ํ•œ ์ค„์— ๊ฐ™์ด ๋“ค์–ด์˜จ๋‹ค. ๋”ฐ๋กœ๋”ฐ๋กœ ์ €์žฅํ•˜๋ฉด ๋‚˜์ค‘์— ๋ˆ„๊ตฌ ์„ฑ์ ์ด ๋ˆ„๊ตฌ ๊ฑด์ง€ ๋งค์นญ์ด ์•ˆ ๋˜๊ธฐ ๋•Œ๋ฌธ์—, (์ด๋ฆ„, ์„ฑ์ ) ํ˜•ํƒœ๋กœ ๋ฌถ์–ด์„œ ๋ฆฌ์ŠคํŠธ์— ๋„ฃ์—ˆ๋‹ค. ํ•œ ์ค„ ์ž…๋ ฅ์„ ์ชผ๊ฐค ๋•Œ๋Š” split()์„ ์“ฐ๋ฉด ๊ณต๋ฐฑ ๊ธฐ์ค€์œผ๋กœ ['ํ™๊ธธ๋™', '95'] ์ฒ˜๋Ÿผ ๋‚˜๋ˆ ์ง„๋‹ค.
    ์ •๋ ฌ์€ sorted()๋ฅผ ์“ฐ๋Š”๋ฐ, ๊ทธ๋ƒฅ ์“ฐ๋ฉด ํŠœํ”Œ์˜ ์ฒซ ๋ฒˆ์งธ ๊ฐ’์ธ ์ด๋ฆ„ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌ๋œ๋‹ค. ์„ฑ์  ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌํ•˜๋ ค๋ฉด key= ์˜ต์…˜์œผ๋กœ ๊ธฐ์ค€์„ ์ง€์ •ํ•ด์ค˜์•ผ ํ•œ๋‹ค. lambda x: x[1]์€ “๊ฐ ์›์†Œ์—์„œ ๋‘ ๋ฒˆ์งธ ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ์‚ผ๊ฒ ๋‹ค”๋Š” ๋œป์ด๋‹ค. ์„ฑ์ ์ด ๋‚ฎ์€ ์ˆœ์„œ๋‹ˆ๊นŒ reverse ์˜ต์…˜์€ ๋”ฐ๋กœ ์•ˆ ์ค˜๋„ ๋œ๋‹ค.
    ๋งˆ์ง€๋ง‰์œผ๋กœ ์ •๋ ฌ๋œ ๋ฆฌ์ŠคํŠธ์—์„œ ์ด๋ฆ„๋งŒ ๊บผ๋‚ด์„œ ์ถœ๋ ฅํ•œ๋‹ค. student[0]์ด ์ด๋ฆ„์ด๊ณ , end=' '๋กœ ๊ณต๋ฐฑ ๊ตฌ๋ถ„ํ•ด์„œ ํ•œ ์ค„๋กœ ์ด์–ด์ง€๊ฒŒ ํ–ˆ๋‹ค.

    n = int(input())
    array = []
    for i in range(n):
    input_data = input().split() # 'ํ™๊ธธ๋™ 95' โ†’ ['ํ™๊ธธ๋™', '95'] ๋กœ ์ชผ๊ฐœ๊ธฐ
    name = input_data[0] # ์ฒซ ๋ฒˆ์งธ๊ฐ€ ์ด๋ฆ„
    score = int(input_data[1]) # ๋‘ ๋ฒˆ์งธ๊ฐ€ ์„ฑ์  (์ˆซ์ž๋กœ ๋ณ€ํ™˜)
    array.append((name, score)) # ํŠœํ”Œ ํ˜•ํƒœ๋กœ ๋ฆฌ์ŠคํŠธ์— ์ €์žฅ
    array = sorted(array, key=lambda x: x[1]) # ์ ์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌ (x[1]์ด ์ ์ˆ˜)
    for student in array:
    print(student[0], end=' ') # ํ•™์ƒ ์ด๋ฆ„(student[0])๋งŒ ์ถœ๋ ฅ

    ์ด๊ฑธ ์‹ค์ œ๋กœ ์ž…๋ ฅ ์˜ˆ์‹œ๋ฅผ ์ž…๋ ฅํ•ด๋ณด๋ฉด, ์•„๋ž˜์™€ ๊ฐ™๋‹ค.


    ์ด ์™ธ์—๋„ ๋‹ค๋ฅธ ํ’€์ด๋ฅผ ์ฐพ์•„ ๋ณด๋ฉด, ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

    ์ต์ˆ™ํ•ด์ง€๋ฉด ์ž…๋ ฅ, ์ •๋ ฌ, ์ถœ๋ ฅ ์„ธ ๋‹จ๊ณ„๋ฅผ ๊ฐ๊ฐ ํ•œ ์ค„๋กœ ์••์ถ•ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค.
    ์ž…๋ ฅ์€ ๋ฆฌ์ŠคํŠธ ์ปดํ”„๋ฆฌํ—จ์…˜์œผ๋กœ n๋ฒˆ ๋ฐ˜๋ณตํ•˜๋ฉด์„œ split()์œผ๋กœ ๋ฐ”๋กœ ์ชผ๊ฐœ์„œ ๋ฐ›๋Š”๋‹ค. ์ด๋•Œ ์ˆซ์ž ๋ณ€ํ™˜์€ ์—ฌ๊ธฐ์„œ ์•ˆ ํ•˜๊ณ  ์ •๋ ฌํ•  ๋•Œ ์ฒ˜๋ฆฌํ•œ๋‹ค.
    ์ •๋ ฌ์€ sort()๋กœ ์›๋ณธ ๋ฆฌ์ŠคํŠธ ์ž์ฒด๋ฅผ ๋ฐ”๊พผ๋‹ค. x[1]์ด ๋ฌธ์ž์—ด '95'๋กœ ์ €์žฅ๋ผ ์žˆ์œผ๋‹ˆ๊นŒ int()๋กœ ๋ณ€ํ™˜ํ•ด์„œ ๋น„๊ตํ•ด์•ผ ํ•œ๋‹ค. ๋ณ€ํ™˜ ์•ˆ ํ•˜๋ฉด ๋ฌธ์ž์—ด ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌ๋ผ์„œ '9' > '7' ๊ฐ™์€ ์‹์œผ๋กœ ์ž˜๋ชป ๋น„๊ต๋  ์ˆ˜ ์žˆ๋‹ค.
    ์ถœ๋ ฅ์€ ์ด๋ฆ„๋งŒ ๋ฝ‘์€ ๋ฆฌ์ŠคํŠธ๋ฅผ * ์–ธํŒจํ‚น์œผ๋กœ ํ•œ ๋ฒˆ์— ๊ณต๋ฐฑ ๊ตฌ๋ถ„ํ•ด์„œ ์ถœ๋ ฅํ•œ๋‹ค.

    n = int(input())
    array = [input().split() for _ in range(n)]
    array.sort(key=lambda x: int(x[1])) # ์ ์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌ
    print(*[x[0] for x in array]) # ํ•™์ƒ ์ด๋ฆ„๋งŒ ์ถœ๋ ฅ

    ์ฑ…์—์„œ๋Š” ์–ด๋–ป๊ฒŒ ๋‹ต์„ ํ–ˆ๋Š”์ง€ ์ฐพ์•„๋ณด๋‹ˆ ์•„๋ž˜์™€ ๊ฐ™์•˜๋‹ค(๊ทธ๋ƒฅ ์ฒซ ๋ฒˆ์งธ ๋‚ด๊ฐ€ ํ’€์—ˆ๋˜ ๊ฑฐ์™€ ๊ฑฐ์˜ ๋น„์Šทํ•˜๋‹ค)

    # N์„ ์ž…๋ ฅ๋ฐ›๊ธฐ
    n = int(input())
    # N๋ช…์˜ ํ•™์ƒ ์ •๋ณด๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ๋ฆฌ์ŠคํŠธ์— ์ €์žฅ
    array = []
    for i in range(n):
    input_data = input().split()
    # ์ด๋ฆ„์€ ๋ฌธ์ž์—ด ๊ทธ๋Œ€๋กœ, ์ ์ˆ˜๋Š” ์ •์ˆ˜ํ˜•์œผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ์ €์žฅ
    array.append((input_data[0], int(input_data[1])))
    # ํ‚ค(Key)๋ฅผ ์ด์šฉํ•˜์—ฌ, ์ ์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌ
    array = sorted(array, key=lambda student: student[1])
    # ์ •๋ ฌ์ด ์ˆ˜ํ–‰๋œ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅ
    for student in array:
    print(student[0], end=' ')

  • ๋‚œ์ด๋„:ย โ—โ—‹โ—‹ |ย ํ’€์ด ์‹œ๊ฐ„:ย 15๋ถ„ |ย ์‹œ๊ฐ„ ์ œํ•œ:ย 1์ดˆ |ย ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ:ย 128MB |ย ๊ธฐ์ถœ:ย T ๊ธฐ์—… ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ

    ๋ฌธ์ œ:ย ํ•˜๋‚˜์˜ ์ˆ˜์—ด์—๋Š” ๋‹ค์–‘ํ•œ ์ˆ˜๊ฐ€ ์กด์žฌํ•œ๋‹ค. ์ด๋Ÿฌํ•œ ์ˆ˜๋Š” ํฌ๊ธฐ์— ์ƒ๊ด€์—†์ด ๋‚˜์—ด๋˜์–ด ์žˆ๋‹ค. ์ด์ˆ˜๋ฅผ ํฐ ์ˆ˜๋ถ€ํ„ฐ ์ž‘์€ ์ˆ˜์˜ ์ˆœ์„œ๋กœ ์ •๋ ฌํ•ด์•ผ ํ•œ๋‹ค. ์ˆ˜์—ด์„ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“œ์‹œ์˜ค.

    ์ž…๋ ฅ ์กฐ๊ฑด:
    – ์ฒซ์งธ ์ค„์— ์ˆ˜์—ด์— ์†ํ•ด ์žˆ๋Š” ๊ฐœ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. (1 โ‰ฆ N โ‰ฆ 500)
    – ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N + 1๋ฒˆ์งธ ์ค„๊นŒ์ง€ N๊ฐœ์˜ ์ˆ˜๊ฐ€ ์ž…๋ ฅ๋œ๋‹ค. ์ˆ˜์˜ ๋ฒ”์œ„๋Š” 1 ์ด์ƒ 100,000 ์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๋‹ค.
    ์ถœ๋ ฅ ์กฐ๊ฑด:
    – ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง„ ์ˆ˜์—ด์ด ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ๋œ ๊ฒฐ๊ณผ๋ฅผ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ถœ๋ ฅํ•œ๋‹ค. ๋™์ผํ•œ ์ˆ˜์˜ ์ˆœ์„œ๋Š” ์ž์œ ๋กญ๊ฒŒ ์ถœ๋ ฅํ•ด๋„ ๊ดœ์ฐฎ๋‹ค.
    ์ž…๋ ฅ ์˜ˆ์‹œ)
    3
    15
    27
    12
    ์ถœ๋ ฅ ์˜ˆ์‹œ)
    27 15 12

    ๋ฌธ์ œ ํ’€์ด)

    ์ผ๋‹จ์€ ๋‚ด๋ฆผ์ฐจ์ˆœ์ด๋ฏ€๋กœ ์ˆซ์ž๋“ค์„ ์ž…๋ ฅ ๋ฐ›์•„์„œ ํฐ ๊ฒƒ๋ถ€ํ„ฐ ์ž‘์€ ์ˆœ์„œ๋กœ ์ค„์„ ์„ธ์šฐ๋Š” ๋ฌธ์ œ์ด๋‹ค.
    ์ž…๋ ฅ ์˜ˆ์‹œ๋ฅผ ๋ณด๋ฉด ์ฒซ ์ค„์— 3์ด ๋‚˜์˜จ๋‹ค. ๊ทธ๊ฑธ ๋จผ์ € ์ž…๋ ฅ์œผ๋กœ ๋ฐ›๊ณ  ์ˆซ์ž๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ๋ฐ›์•„์•ผ ํ•˜๋‹ˆ ์ด์ „์ฒ˜๋Ÿผ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ด์šฉํ•ด์„œ ๋ชจ์•„๋‘”๋‹ค. ๊ทธ ํ›„, ๊ทธ ํšŸ์ˆ˜(N)๋งŒํผ ๋ฐ˜๋ณตํ•˜๋ฉด์„œ ์ž…๋ ฅ ๋ฐ›์•„ ๋ฆฌ์ŠคํŠธ ์•ˆ์— ๋„ฃ๋Š”๋‹ค. ๋ฆฌ์ŠคํŠธ์— ํ•˜๋‚˜์”ฉ ์ถ”๊ฐ€์‹œ์—๋Š” append()๋ฅผ ์“ด๋‹ค.
    ํŒŒ์ด์ฌ์— ์ •๋ ฌ ํ•จ์ˆ˜๋Š” sorted()๊ฐ€ ์žˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜, ๊ธฐ๋ณธ์ด ์˜ค๋ฆ„์ฐจ์ˆœ์ด๋ผ์„œ ๊ทธ๋ƒฅ ์“ฐ๋ฉด ์ž‘์€ ๊ฒƒ๋ถ€ํ„ฐ ๋‚˜์˜ค๊ธฐ ๋•Œ๋ฌธ์—, ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ๋’ค์ง‘์œผ๋ ค๋ฉด reverse=True ์˜ต์…˜์„ ์ค˜์•ผ ํ•œ๋‹ค. ์ •๋ ฌํ•œ ๊ฒฐ๊ณผ๋Š” ๋‹ค์‹œ array์— ๋ฎ์–ด์”Œ์› ๋‹ค.
    ๋งˆ์ง€๋ง‰์—๋Š” ๊ทธ๋ƒฅ print(array)๋ฅผ ํ–ˆ์„ ๊ฒฝ์šฐ ๋ฆฌ์ŠคํŠธ ์ž์ฒด๋กœ ๋‚˜์˜ค๊ธฐ ๋•Œ๋ฌธ์—, ์ถœ๋ ฅ ์˜ˆ์‹œ์ฒ˜๋Ÿผ ํ•˜๋ ค๋ฉด end= ์˜ต์…˜์„ ์จ์„œ ์ถœ๋ ฅ ๋์— ์ค„๋ฐ”๊ฟˆ ๋Œ€์‹  ์›ํ•˜๋Š” ๊ฑธ ๋ถ™์ผ ์ˆ˜ ์žˆ๋‹ค.
    ๋‚ด๊ฐ€ ์“ด ๋‹ต๊ณผ ๊ทธ๋ƒฅ ๋‹ต์•ˆ์ด๋ž‘ ๋˜‘๊ฐ™์•„์„œ ์•„๋ž˜๋Š” ๋‹ต์•ˆ์„ ๋„ฃ์—ˆ๋‹ค. (์‚ฌ์‹ค์ƒ ๋‹ต์•ˆ ์˜ˆ์‹œ์— ์žˆ๋Š” ์ฃผ์„๋งŒ ์ถ”๊ฐ€ํ•œ ์ˆ˜์ค€)

    # N์„ ์ž…๋ ฅ๋ฐ›๊ธฐ
    n = int(input())
    # N๊ฐœ์˜ ์ •์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ๋ฆฌ์ŠคํŠธ์— ์ €์žฅ
    array = []
    for i in range(n):
    array.append(int(input()))
    # ํŒŒ์ด์ฌ ๊ธฐ๋ณธ ์ •๋ ฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ด์šฉํ•˜์—ฌ ์ •๋ ฌ ์ˆ˜ํ–‰
    array = sorted(array, reverse=True)
    # ์ •๋ ฌ์ด ์ˆ˜ํ–‰๋œ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅ
    for i in array:
    print(i, end=' ')

    ์ด๊ฑธ ์‹ค์ œ๋กœ ์ž…๋ ฅ ์˜ˆ์‹œ๋ฅผ ์ž…๋ ฅํ•ด๋ณด๋ฉด, ์•„๋ž˜์™€ ๊ฐ™๋‹ค.


    ์ด ์™ธ์—๋„ ๋‹ค๋ฅธ ํ’€์ด๋ฅผ ๋ณด๋ฉด, ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

    n = int(input())
    nums = [int(input()) for _ in range(n)]
    print (*sorted(nums, reverse=True))

    sorted ๋ฅผ ์ด์šฉํ•˜๋ฉด…๊ทธ๋ƒฅ..๋„ˆ๋ฌด๋‚˜๋„ ์‰ฌ์šด๊ฒƒ.. ์ฝ”๋“œ๊ฐ€ ๊ธธ์–ด์ง€์ง€๋„ ์•Š๋Š”๋‹ค.
    sorted ์•ž์˜ *๋Š” unpacking์˜ ๋œป์œผ๋กœ ๋ฆฌ์ŠคํŠธ๋ฅผ ํ’€์–ด ํ—ค์น˜๋Š” ์—ฐ์‚ฐ์ž์ด๋‹ค.
    ์˜ˆ๋ฅผ๋“ค์–ด ๊ณ„๋ž€ ๊ณฝ์˜ ๋ฆฌ์ŠคํŠธ๊ฐ€ ์žˆ๊ณ  ๊ทธ ์•ˆ์— ๊ณ„๋ž€์ด 1, 2, 3, 4, 5๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•˜๋ฉด,
    eggs = [1, 2, 3, 4, 5]

    print(eggs) # ํŒ์งธ๋กœ ๋˜์ง€๋Š” ๊ฒƒ โ†’ [1, 2, 3, 4, 5]
    print(*eggs) # ๋‚ฑ๊ฐœ๋กœ ๊บผ๋‚ด์„œ ๋˜์ง€๋Š” ๊ฒƒ โ†’ 1 2 3 4 5

    ํ’€์ด ์‹œ๊ฐ„์„ 15๋ถ„๋งŒ ์ค€ ๊ฒƒ์ฒ˜๋Ÿผ, sorted๋งŒ ์ดํ•ดํ•˜๊ณ  ์žˆ์œผ๋ฉด ์–ด๋ ค์šด ๋ฌธ์ œ๋Š” ์•„๋‹ˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค.

  • โœ… Balanced Nutrition per Meal

    • Protein: 30โ€“40g ๐Ÿฅš
      • โ†’ Prevents muscle loss and promotes the release of GLP-1, a key satiety hormone
    • Dietary Fiber: 10 g or more ๐Ÿฅฆ
      • โ†’ Stabilizes blood sugar and supports gut health
    • Healthy Fats: 10โ€“20 g ๐Ÿซ’
      • โ†’ Supports hormonal balance and helps maintain fullness

    1๏ธโƒฃVegetable-Forward Protein Plate ๐Ÿณ๐Ÿฅฌ

    • Base Components
      • Stir-fried cabbage, broccoli, and bell peppers
        • 1 teaspoon olive oil (for cooking or drizzled at the end)
      • 2โ€“3 eggs (boiled, fried, or scrambled)
      • Protein Options
        • Tofu or soft tofu (200 g)
        • โŒ If tofu isnโ€™t your thing โ†’ mackerel or salmon (150 g)
      • Optional Fiber Boost
        • ยฝ apple with the skin on ๐ŸŽ
        • A handful of blueberries ๐Ÿซ

    2๏ธโƒฃ Greek Yogurt Parfait๐Ÿฅฃ

    • Ingredients
      • Greek yogurt (200 g)
        • โ†’ ~20 g protein
      • Chia seeds (1 teaspoon)
      • Mixed nuts (20โ€“25 g)
        • Walnuts / macadamia nuts / almonds
      • A handful of berries (blueberries recommended)
      • A pinch of cinnamon โœจ
    • Pairs Well With
      • Lemon water ๐Ÿ‹
      • Apple cider vinegar
      • A small amount of olive oil (optional, surprisingly good together)

    3๏ธโƒฃ Oats & Legume Protein Bowl ๐ŸŒพ๐Ÿซ˜

    • Ingredients
      • Toasted oats or rolled oats (40โ€“50 g)
      • Unsweetened Greek yogurt or plain yogurt
      • Chickpeas (~50 g)
      • Vegetables + olive oil
        • โ†’ Stir-fried or served as a salad
      • ๐Ÿ‘‰ A very well-balanced combination of carbohydrates, protein, and fat

    4๏ธโƒฃ Korean-Style Diet Meal ๐Ÿš๐ŸŸ

    • Base Components
      • Grains
        • Mixed whole-grain rice
        • โ†’ Oats, kamut, farro, brown rice, barley
        • โ†’ Chickpeas / lentils / black soybeans
      • Side Dishes
        • Seaweed (wakame, kelp, hijiki)
        • Cold-pressed or low-temperature pressed perilla oil / sesame oil
        • Apply the same oils to seasoned vegetables (namul)
      • Protein Choices
        • Eggs (fried, scrambled, or steamed egg custard)
        • Fish (mackerel, Spanish mackerel, salmon)
        • Meat (based on preference)
        • Seafood (stir-fried or steamed)

    ๐Ÿ˜ฎโ€๐Ÿ’จ What to Do If Youโ€™re Still Hungry

    • Before Meals
      • Vinegar / lemon water / cinnamon
      • Drink one full glass of water first ๐Ÿ’ง
    • Smart Snack Options
      • Roasted beans
      • Cucumber, carrot, or celery sticks
      • Cherry tomatoes
      • Boiled eggs

    ๐Ÿ”ฅ Fat-Burning Boost Strategies

    1๏ธโƒฃ Sleep ๐Ÿ˜ด

    • 7โ€“8 hours per night
    • If sleep-deprived โ†’ at least 15 minutes of daylight exposure โ˜€๏ธ
      • โ†’ Activates serotonin

    2๏ธโƒฃ Pre-Sleep Routine ๐ŸŒ™

    • Avoid screens 2โ€“3 hours before bed โŒ
      • (reduce blue light exposure)

    3๏ธโƒฃ Supplements (Optional)

    • Melatonin
    • GABA
    • L-theanine

    4๏ธโƒฃ Exercise Strategy ๐Ÿƒโ€โ™€๏ธ

    • Morning cardio
      • โœ” Recommended if you already have muscle mass
    • If muscle mass is low:
      • โ†’ Exercise before dinner, then eat at home afterward
    • Lower-body strength training is essential
      • Activate mitochondria & AMPK
    • High-intensity interval training (HIIT)
      • Cycling / stepper / stairs
      • Near maximum heart rate

    5๏ธโƒฃWater๐Ÿ’ง

    • At least 2 liters per day

    6๏ธโƒฃ NEAT (Non-Exercise Activity Thermogenesis)

    • More important than formal workouts
      • ๐Ÿ‘‰ Move more throughout the day

    7๏ธโƒฃ Post-Meal Habit ๐Ÿšถโ€โ™€๏ธ

    • Walk for 10โ€“15 minutes after eating

    ๐Ÿ‘‰ See “Korean ver.” ๐Ÿฅ— ํšจ๊ณผ์ ์ธ ํ•œ ๋ผ ์‹์‚ฌ ๊ธฐ๋ณธ ์›์น™: ์ง€๋ฐฉ ์—ฐ์†Œ๋ฅผ ์œ„ํ•œ ๋‹ค์ด์–ดํŠธ

  • โœ… ํ•œ ๋ผ ๊ธฐ์ค€ ์˜์–‘ ๋ฐธ๋Ÿฐ์Šค

    • ๋‹จ๋ฐฑ์งˆ 30โ€“40g ๐Ÿฅš
      • โ†’ ๊ทผ์†์‹ค ๋ฐฉ์ง€, ํฌ๋งŒ๊ฐ ํ˜ธ๋ฅด๋ชฌ GLP-1 ๋ถ„๋น„ ์ด‰์ง„
    • ์‹์ด์„ฌ์œ  10g ์ด์ƒ ๐Ÿฅฆ
      • โ†’ ํ˜ˆ๋‹น ์•ˆ์ •, ์žฅ ๊ฑด๊ฐ•
    • ์ข‹์€ ์ง€๋ฐฉ 10โ€“20g ๐Ÿซ’
      • โ†’ ํ˜ธ๋ฅด๋ชฌ ๊ท ํ˜•, ํฌ๋งŒ๊ฐ ์œ ์ง€

    1๏ธโƒฃ ์ฑ„์†Œ + ๋‹จ๋ฐฑ์งˆ ์ค‘์‹ฌ ์‹๋‹จ ๐Ÿณ๐Ÿฅฌ

    • ๊ตฌ์„ฑ
      • ์–‘๋ฐฐ์ถ”, ๋ธŒ๋กœ์ฝœ๋ฆฌ, ํŒŒํ”„๋ฆฌ์นด ๋ณถ๊ธฐ
      • ์˜ฌ๋ฆฌ๋ธŒ์˜ค์ผ 1 ํ‹ฐ์Šคํ‘ผ (๋ณถ์„ ๋•Œ or ๋งˆ๋ฌด๋ฆฌ๋กœ)
      • ๊ณ„๋ž€ 2โ€“3๊ฐœ (์‚ถ๊ธฐ / ํ”„๋ผ์ด / ์Šคํฌ๋žจ๋ธ”)
      • ๋‹จ๋ฐฑ์งˆ ์„ ํƒ
        • ๋‘๋ถ€ or ์—ฐ๋‘๋ถ€ 200g
        • โŒ ๋‘๋ถ€๊ฐ€ ์‹ซ๋‹ค๋ฉด โ†’ ๊ณ ๋“ฑ์–ด / ์—ฐ์–ด 150g
      • ์‹์ด์„ฌ์œ  ๋ณด์ถฉ ์˜ต์…˜
        • ์‚ฌ๊ณผ ยฝ๊ฐœ (๊ป์งˆ์งธ) ๐ŸŽ
        • ๋ธ”๋ฃจ๋ฒ ๋ฆฌ ํ•œ ์คŒ ๐Ÿซ

    2๏ธโƒฃ ๊ทธ๋ฆญ์š”๊ฑฐํŠธ ํŒŒ๋ฅดํŽ˜ ๐Ÿฅฃ

    • ๊ตฌ์„ฑ
      • ๊ทธ๋ฆญ์š”๊ฑฐํŠธ 200g
        • โ†’ ๋‹จ๋ฐฑ์งˆ ์•ฝ 20g
      • ์น˜์•„์”จ๋“œ 1 ํ‹ฐ์Šคํ‘ผ
      • ๊ฒฌ๊ณผ๋ฅ˜ 20โ€“25g
        • ํ˜ธ๋‘ / ๋งˆ์นด๋‹ค๋ฏธ์•„ / ์•„๋ชฌ๋“œ
      • ๋ฒ ๋ฆฌ๋ฅ˜ ํ•œ ์คŒ (๋ธ”๋ฃจ๋ฒ ๋ฆฌ ์ถ”์ฒœ)
      • ์‹œ๋‚˜๋ชฌ ๊ฐ€๋ฃจ ํ†ก โœจ
    • ํ•จ๊ป˜ํ•˜๋ฉด ์ข‹์€ ์กฐํ•ฉ
      • ๋ ˆ๋ชฌ์ˆ˜ ๐Ÿ‹
      • ์• ์‚ฌ๋น„
      • ์˜ฌ๋ฆฌ๋ธŒ์˜ค์ผ ์†Œ๋Ÿ‰ ์„ž์–ด๋„ ๊ถํ•ฉ ์ข‹์Œ

    3๏ธโƒฃ ๊ท€๋ฆฌ & ์ฝฉ ๋‹จ๋ฐฑ์งˆ ์‹๋‹จ ๐ŸŒพ๐Ÿซ˜

    • ๊ตฌ์„ฑ
      • ๋ณถ์€ ๊ท€๋ฆฌ or ์••์ฐฉ๊ท€๋ฆฌ 40โ€“50g
      • ๋ฌด๊ฐ€๋‹น ๊ทธ๋ฆญ์š”๊ฑฐํŠธ or ํ”Œ๋ ˆ์ธ์š”๊ฑฐํŠธ
      • ๋ณ‘์•„๋ฆฌ์ฝฉ ์•ฝ 50g
      • ์ฑ„์†Œ + ์˜ฌ๋ฆฌ๋ธŒ์˜ค์ผ
        • โ†’ ๋ณถ๊ฑฐ๋‚˜ ์ƒ๋Ÿฌ๋“œ๋กœ ํ™œ์šฉ
      • ๐Ÿ‘‰ ํƒ„์ˆ˜ยท๋‹จ๋ฐฑ์งˆยท์ง€๋ฐฉ ๊ท ํ˜•์ด ์•„์ฃผ ์ข‹์€ ์กฐํ•ฉ

    4๏ธโƒฃ ํ•œ์‹ํŒŒ ๋‹ค์ด์–ดํ„ฐ ์‹๋‹จ ๐Ÿš๐ŸŸ

    • ๊ตฌ์„ฑ
      • ๋ฐฅ
        • ํ†ต๊ณก๋ฌผ ์ฝฉ๋ฐฅ
        • โ†’ ๊ท€๋ฆฌ, ์นด๋ฌดํŠธ, ํŒŒ๋กœ, ํ˜„๋ฏธ, ๋ณด๋ฆฌ
        • โ†’ ๋ณ‘์•„๋ฆฌ์ฝฉ / ๋ Œํ‹ธ์ฝฉ / ์„œ๋ฆฌํƒœ
      • ๋ฐ˜์ฐฌ
        • ํ•ด์กฐ๋ฅ˜ (๋ฏธ์—ญยท๋‹ค์‹œ๋งˆยทํ†ณ)
        • ๋ƒ‰์••์ฐฉ/์ €์˜จ์••์ฐฉ ๋“ค๊ธฐ๋ฆ„ยท์ฐธ๊ธฐ๋ฆ„
        • ๋‚˜๋ฌผ๋ฅ˜๋„ ๋™์ผํ•˜๊ฒŒ ์ €์˜จ ์••์ฐฉ ๊ธฐ๋ฆ„ ์‚ฌ์šฉ
      • ๋‹จ๋ฐฑ์งˆ ์„ ํƒ
        • ๊ณ„๋ž€ ์š”๋ฆฌ (ํ›„๋ผ์ด / ์Šคํฌ๋žจ๋ธ” / ๊ณ„๋ž€์ฐœ)
        • ์ƒ์„  (๊ณ ๋“ฑ์–ดยท์‚ผ์น˜ยท์—ฐ์–ด)
        • ๊ณ ๊ธฐ (๊ธฐํ˜ธ์— ๋งž๊ฒŒ)
        • ํ•ด์‚ฐ๋ฌผ ๋ณถ์Œ or ์ฐœ

    ๐Ÿ˜ฎโ€๐Ÿ’จ ๊ทธ๋ž˜๋„ ๋ฐฐ๊ณ ํ”Œ ๋•Œ ๋Œ€์ฒ˜๋ฒ•

    • ์‹์‚ฌ ์ „
      • ์‹์ดˆ / ๋ ˆ๋ชฌ์ˆ˜ / ๊ณ„ํ”ผ๊ฐ€๋ฃจ
      • ๋ฌผ ๋จผ์ € ํ•œ ์ปต ๐Ÿ’ง
    • ๊ฐ„์‹ ์ถ”์ฒœ
      • ๋ณถ์€ ์ฝฉ
      • ์˜ค์ดยท๋‹น๊ทผยท์ƒ๋Ÿฌ๋ฆฌ ์Šคํ‹ฑ
      • ๋ฐฉ์šธํ† ๋งˆํ† 
      • ์‚ถ์€ ๊ณ„๋ž€

    ๐Ÿ”ฅ ์ง€๋ฐฉ ์—ฐ์†Œ ๋ถ€์ŠคํŒ… ์ „๋žต

    1๏ธโƒฃ ์ˆ˜๋ฉด ๐Ÿ˜ด

    • 7โ€“8์‹œ๊ฐ„
    • ๋ถ€์กฑํ•˜๋ฉด ๋‚ฎ ํ–‡๋น› 15๋ถ„ ์ด์ƒ โ˜€๏ธ
      • โ†’ ์„ธ๋กœํ† ๋‹Œ ํ™œ์„ฑํ™”

    2๏ธโƒฃ ์ทจ์นจ ์ „ ๋ฃจํ‹ด ๐ŸŒ™

    • ์ž๊ธฐ ์ „ 2โ€“3์‹œ๊ฐ„ ์ „์ž๊ธฐ๊ธฐ โŒ
      • (๋ธ”๋ฃจ๋ผ์ดํŠธ ์ฐจ๋‹จ)

    3๏ธโƒฃ ์˜์–‘์ œ (์„ ํƒ)

    • ๋ฉœ๋ผํ† ๋‹Œ
    • GABA
    • ํ…Œ์•„๋‹Œ

    4๏ธโƒฃ ์šด๋™ ์ „๋žต ๐Ÿƒโ€โ™€๏ธ

    • ์•„์นจ ์œ ์‚ฐ์†Œ
      • โœ” ๊ทผ์œก๋Ÿ‰ ์žˆ๋Š” ๊ฒฝ์šฐ ์ถ”์ฒœ
    • ๊ทผ์œก๋Ÿ‰ ์ ์œผ๋ฉด
      • ์ €๋… ์‹์‚ฌ ์ „ ์šด๋™ ํ›„ โ†’ ์ง‘์—์„œ ์‹์‚ฌ
    • ํ•˜์ฒด ๊ทผ๋ ฅ์šด๋™ ํ•„์ˆ˜
      • ๋ฏธํ† ์ฝ˜๋“œ๋ฆฌ์•„ & AMPK ํ™œ์„ฑํ™”
    • ๊ณ ๊ฐ•๋„ ์ธํ„ฐ๋ฒŒ ์šด๋™
      • ์ž์ „๊ฑฐ / ์Šคํ…ํผ / ๊ณ„๋‹จ
      • ์ตœ๋Œ€ ์‹ฌ๋ฐ•์ˆ˜ ๊ทผ์ ‘

    5๏ธโƒฃ ๋ฌผ ๐Ÿ’ง

    • ํ•˜๋ฃจ 2L ์ด์ƒ

    6๏ธโƒฃ NEAT (๋น„ํ™œ๋™์„ฑ ์šด๋™)

    • ์šด๋™๋ณด๋‹ค ์ค‘์š”ํ•œ ๊ฑด
      • ๐Ÿ‘‰ ํ‰์†Œ์— ๋” ๋งŽ์ด ์›€์ง์ด๊ธฐ

    7๏ธโƒฃ ์‹ํ›„ ์Šต๊ด€ ๐Ÿšถโ€โ™€๏ธ

    • ์‹์‚ฌ ํ›„ 10โ€“15๋ถ„ ๊ฑท๊ธฐ

    ๐Ÿ‘‰ ์˜์–ด ๋ฒ„์ „์€ ์—ฌ๊ธฐ์—: ๐Ÿฅ— Effective Meal Principles: A Fat-Lossโ€“Focused Dietย Guide

  • ๋‚œ์ด๋„: โ—โ—โ—‹ | ํ’€์ด ์‹œ๊ฐ„: 30๋ถ„ | ์‹œ๊ฐ„ ์ œํ•œ: 1์ดˆ | ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ: 128MB

    ๋ฌธ์ œ: ๋™๋นˆ์ด๋Š” N ร— M ํฌ๊ธฐ์˜ ์ง์‚ฌ๊ฐํ˜• ํ˜•ํƒœ์˜ ๋ฏธ๋กœ์— ๊ฐ‡ํ˜€ ์žˆ๋‹ค. ๋ฏธ๋กœ์—๋Š” ์—ฌ๋Ÿฌ ๋งˆ๋ฆฌ์˜ ๊ดด๋ฌผ์ด ์žˆ์–ด ์ด๋ฅผ ํ”ผํ•ด ํƒˆ์ถœํ•ด์•ผ ํ•œ๋‹ค. ๋™๋นˆ์ด์˜ ์œ„์น˜๋Š” (1, 1)์ด๊ณ  ๋ฏธ๋กœ์˜ ์ถœ๊ตฌ๋Š” (N, M)์˜ ์œ„์น˜์— ์กด์žฌํ•˜๋ฉฐ ํ•œ ๋ฒˆ์— ํ•œ ์นธ์”ฉ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋•Œ ๊ดด๋ฌผ์ด ์žˆ๋Š” ๋ถ€๋ถ„์€ 0์œผ๋กœ, ๊ดด๋ฌผ์ด ์—†๋Š” ๋ถ€๋ถ„์€ 1๋กœ ํ‘œ์‹œ๋˜์–ด ์žˆ๋‹ค. ๋ฏธ๋กœ๋Š” ๋ฐ˜๋“œ์‹œ ํƒˆ์ถœํ•  ์ˆ˜ ์žˆ๋Š” ํ˜•ํƒœ๋กœ ์ œ์‹œ๋œ๋‹ค. ์ด๋•Œ ๋™๋นˆ์ด๊ฐ€ ํƒˆ์ถœํ•˜๊ธฐ ์œ„ํ•ด ์›€์ง์—ฌ์•ผ ํ•˜๋Š” ์ตœ์†Œ ์นธ์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜์‹œ์˜ค. ์นธ์„ ์…€ ๋•Œ๋Š” ์‹œ์ž‘ ์นธ๊ณผ ๋งˆ์ง€๋ง‰ ์นธ์„ ๋ชจ๋‘ ํฌํ•จํ•ด์„œ ๊ณ„์‚ฐํ•œ๋‹ค.

    ์ž…๋ ฅ ์กฐ๊ฑด:
    – ์ฒซ์งธ ์ค„์— ๋‘ ์ •์ˆ˜ N, M (4 โ‰ฆ N, M โ‰ฆ 200)์ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ๋‹ค์Œ N๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ๊ฐ M๊ฐœ์˜ ์ •์ˆ˜(0 ํ˜น์€ 1)๋กœ ๋ฏธ๋กœ์˜ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ๊ฐ์˜ ์ˆ˜๋“ค์€ ๊ณต๋ฐฑ ์—†์ด ๋ถ™์–ด์„œ ์ž…๋ ฅ์œผ๋กœ ์ œ์‹œ๋œ๋‹ค. ๋˜ํ•œ ์‹œ์ž‘ ์นธ๊ณผ ๋งˆ์ง€๋ง‰ ์นธ์€ ํ•ญ์ƒ 1์ด๋‹ค.
    ์ถœ๋ ฅ ์กฐ๊ฑด:
    – ์ฒซ์งธ ์ค„์— ์ตœ์†Œ ์ด๋™ ์นธ์˜ ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

    ๋ฌธ์ œ ํ’€์ด)

    ์ด๊ฑฐ๋Š” BFS ๋ฐฉ์‹์œผ๋กœ ํ’€ ์ˆ˜ ์žˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด, ๋ฌธ์ œ์—์„œ๋„ ๋™๋นˆ์ด๊ฐ€ ํƒˆ์ถœํ•˜๊ธฐ ์œ„ํ•ด ์›€์ง์—ฌ์•ผ ํ•˜๋Š” ์ตœ์†Œ ์นธ์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋ผ๊ณ  ํ–ˆ๊ณ , ์ถœ๋ ฅ ์กฐ๊ฑด๋„ ์ฒซ์งธ ์ค„์— ์ตœ์†Œ ์ด๋™์นธ์˜ ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค๊ณ  ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
    DFS๋Š” ์ผ๋‹จ ๋๊นŒ์ง€ ์ง„ํ–‰ํ•ด์„œ ์–ด๋””๊ฐ€ ๊ฐ€๋Šฅํ•œ ์ง€๋ฅผ ๋ณด๊ธฐ ๋•Œ๋ฌธ์— ์—ฌ๋Ÿฌ ๋ฒˆ ์™”๋‹ค ๊ฐ”๋‹ค ํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ์— ์ตœ๋‹จ๊ฑฐ๋ฆฌ๊ฐ€ ๋ณด์žฅ์ด ์•ˆ๋˜๋Š” ๋ฐ˜๋ฉด, BFS๋Š” ๊ฐ€๊นŒ์šด ๊ณณ๋ถ€ํ„ฐ ํผ์ ธ๋‚˜๊ฐ€๋Š” ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•ด์„œ ํšจ์œจ์ ์œผ๋กœ ์›€์ง์ด๊ธฐ ๋•Œ๋ฌธ์— ์ตœ๋‹จ๊ฑฐ๋ฆฌ๋ฅผ ๋ณด์žฅํ•œ๋‹ค.
    BFS (Breadth-First Search)๋ž€ ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰์œผ๋กœ ๊ทธ๋ž˜ํ”„๋‚˜ ๋งต์—์„œ ํ•œ ์ง€์ ์—์„œ ์‹œ์ž‘ํ•ด ์ธ์ ‘ํ•œ ์นธ์„ ๋จผ์ € ์ „๋ถ€ ํƒ์ƒ‰ํ•œ ๋’ค, ๊ทธ ๋‹ค์Œ ๊ฑฐ๋ฆฌ์˜ ์นธ์„ ํƒ์ƒ‰ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. ๋งˆ์น˜ ๋Œ์„ ๋ฌผ์— ๋˜์กŒ์„ ๋•Œ ๋ฌผ๊ฒฐ์ด ๋™์‹ฌ์›์ฒ˜๋Ÿผ ํผ์ ธ๋‚˜๊ฐ€๋Š” ๊ฒƒ๊ณผ ๊ฐ™๋‹ค.
    DFS์™€ ๋‹ฌ๋ฆฌ ๊ฐ€๊นŒ์šด ๊ณณ๋ถ€ํ„ฐ ์ˆœ์„œ๋Œ€๋กœ ํƒ์ƒ‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๋ฅผ ๋ณด์žฅํ•œ๋‹ค๋Š” ํŠน์ง•์ด ์žˆ๋‹ค. ์ด ๋•Œ๋ฌธ์— “์ตœ์†Œ ๋ช‡ ์นธ์„ ์ด๋™ํ•ด์•ผ ํ•˜๋Š”๊ฐ€” ์™€ ๊ฐ™์€ ์ตœ๋‹จ ๊ฒฝ๋กœ ๋ฌธ์ œ์— ์ ํ•ฉํ•˜๋‹ค. ํ(Queue) ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ, ๋จผ์ € ๋„ฃ์€ ์นธ์„ ๋จผ์ € ๊บผ๋‚ด๋Š” ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค.
    ์ด ๋ฌธ์ œ์—์„œ๋Š” BFS๋ฅผ ์ด์šฉํ•ด ์‹œ์ž‘์  (0, 0) ์—์„œ ์ถœ๋ฐœํ•ด ์ƒํ•˜์ขŒ์šฐ๋กœ ํผ์ ธ๋‚˜๊ฐ€๋ฉฐ ๋„์ฐฉ์  (N-1, M-1) ๊นŒ์ง€์˜ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•œ๋‹ค. ์ด๋™ํ•  ๋•Œ๋งˆ๋‹ค ํ•ด๋‹น ์นธ์˜ ๊ฐ’์„ ์ด์ „ ์นธ์˜ ๊ฐ’ + 1๋กœ ๊ฐฑ์‹ ํ•ด ๊ฑฐ๋ฆฌ๋ฅผ ๊ธฐ๋กํ•˜๋ฉฐ, ๋„์ฐฉ์ ์— ๋„๋‹ฌํ–ˆ์„ ๋•Œ์˜ ๊ฐ’์ด ๊ณง ์ตœ์†Œ ์ด๋™ ์นธ์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋œ๋‹ค.

    ์ด์ „ ๋ฌธ์ œ๋“ค๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋งต์˜ ํฌ๊ธฐ๋ฅผ N๊ณผ M์œผ๋กœ ์ž…๋ ฅ๋ฐ›๊ณ (N ร— M), ๋งต ์ •๋ณด๋Š” graph ๋ณ€์ˆ˜์— ์ €์žฅํ•œ๋‹ค. ๊ณต๋ฐฑ ์—†์ด ๋ถ™์–ด์„œ ์ž…๋ ฅ๋˜๋ฏ€๋กœ DFS์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ split() ์—†์ด ํ•œ ๊ธ€์ž์”ฉ ๋ฐ›๋Š”๋‹ค.

    ์•ž์—์„œ ๋ฐฐ์šด๋Œ€๋กœ queue ๋ฅผ ์‚ฌ์šฉํ•ด ์‹œ์ž‘์  (0, 0) ์„ ๋จผ์ € ๋„ฃ๊ณ  ํƒ์ƒ‰์„ ์‹œ์ž‘ํ•œ๋‹ค. ํ์—์„œ ๊บผ๋‚ธ ์นธ์˜ ์ƒํ•˜์ขŒ์šฐ๋ฅผ ํ™•์ธํ•˜๋ฉด์„œ, ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚˜๊ฑฐ๋‚˜ ๊ดด๋ฌผ(0)์ด ์žˆ๋Š” ์นธ์€ ์Šคํ‚ตํ•œ๋‹ค. ์ฒ˜์Œ ๋ฐฉ๋ฌธํ•˜๋Š” ์นธ(1)์ด๋ผ๋ฉด ์ด์ „ ์นธ์˜ ๊ฐ’์— +1 ์„ ๋”ํ•ด ๊ฑฐ๋ฆฌ๋ฅผ ๊ธฐ๋กํ•˜๊ณ  ํ์— ๋„ฃ๋Š”๋‹ค. ์ด ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•˜๋‹ค ๋ณด๋ฉด ๋„์ฐฉ์  (N-1, M-1) ์— ์ตœ๋‹จ๊ฑฐ๋ฆฌ๊ฐ€ ๊ธฐ๋ก๋˜๊ณ , ๊ทธ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋ฉด ๋์ด๋‹ค.

    from collections import deque
    N, M = map(int, input().split())
    dx = [-1, 0, 1, 0]
    dy = [0, 1, 0, -1]
    graph = []
    for _ in range(N):
    graph.append(list(map(int, input())))
    # ์‹œ์ž‘์ ์„ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๋ฐ›์•„์„œ ๋‚˜์ค‘์— ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๊ฒŒ ํ•จ
    def bfs(x, y):
    queue = deque()
    queue.append((x, y)) # ์‹œ์ž‘์ ์„ ํ์— ๋„ฃ์–ด ํƒ์ƒ‰ ์‹œ์ž‘
    while queue:# ํ๊ฐ€ ๋นŒ ๋•Œ๊นŒ์ง€
    x, y = queue.popleft() # ์•ž์—์„œ ๊บผ๋‚ด๊ธฐ
    #์ƒํ•˜ ์ขŒ์šฐ ํ™•์ธ
    for i in range(4):
    nx = x + dx[i]
    ny = y + dy[i]
    # ๋ฒ”์œ„ ๋ฐ–์ด๋ฉด ์Šคํ‚ต
    if nx < 0 or nx >= N or ny < 0 or ny >= M:
    continue
    # ๊ดด๋ฌผ์ด ์žˆ์œผ๋ฉด ์Šคํ‚ต
    if graph[nx][ny] == 0:
    continue
    # ์ฒ˜์Œ ๋ฐฉ๋ฌธํ•˜๋Š” ์นธ์ด๋ฉด
    if graph[nx][ny] == 1:
    graph[nx][ny] = graph[x][y] + 1 # ๊ฑฐ๋ฆฌ ๊ธฐ๋ก
    queue.append((nx, ny))
    return graph[N-1][M-1] # ์ตœ๋‹จ ๊ฑฐ๋ฆฌ ๋ฐ˜ํ™˜
    print(bfs(0, 0))

    BFS๋Š” DFS์— ๋น„ํ•ด ํ™•์‹คํžˆ ์–ด๋ ค์› ๋‹ค. ์ƒํ•˜์ขŒ์šฐ ๋ฌธ์ œ๋‚˜ ๋งต ๋ฌธ์ œ๋Š” ์ด์ œ ์ต์ˆ™ํ•ด์กŒ์ง€๋งŒ, BFS ํŠน์œ ์˜ ํ ๋ฐฉ์‹์ด๋‚˜ graph[nx][ny] = graph[x][y] + 1 ๋กœ ๊ฑฐ๋ฆฌ๋ฅผ ๊ธฐ๋กํ•˜๋Š” ๋ฐฉ์‹์€ ์ง์ ‘ ํ•œ ์นธ์”ฉ ๋”ฐ๋ผ๊ฐ€๋ณด๊ธฐ ์ „๊นŒ์ง€๋Š” ์ดํ•ด๊ฐ€ ์•ˆ ๋๋‹ค. ๋ฌผ๋ก  ์—ฌ๋Ÿฌ ๋ฒˆ ๋น„์Šทํ•œ ๋ฌธ์ œ๋ฅผ ํ’€๋‹ค ๋ณด๋ฉด ๊ฐ์ด ์žกํžˆ๊ฒ ์ง€๋งŒ, ์ง€๊ธˆ ๋‹น์žฅ์€ ์•„์ง ๋‚ด ๊ฒƒ์œผ๋กœ ์™„์ „ํžˆ ๋งŒ๋“ค์ง€ ๋ชปํ•œ ๋А๋‚Œ์ด๋‹ค.

    ์ž…๋ ฅ ์˜ˆ์‹œ๋ฅผ ์ค€ ๋Œ€๋กœ ์ž…๋ ฅํ•ด๋ณด๋ฉด ์•„๋ž˜์ฒ˜๋Ÿผ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜จ๋‹ค.

    ์ž…๋ ฅ ์˜ˆ์‹œ:
    5 6
    101010
    111111
    000001
    111111
    111111

    ๋‹ต์•ˆ ์˜ˆ์‹œ ์ฝ”๋“œ์™€ ๊ฑฐ์˜ ๋™์ผํ•˜๊ฒŒ ๋‚˜์™”๋‹ค. AI์˜ ๋„์›€์„ ๋ฐ›๊ธด ํ–ˆ์ง€๋งŒ, ๊ฐ ๋‹จ๊ณ„๋ฅผ ์ดํ•ดํ•˜๋ฉด์„œ ํ’€์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์˜๋ฏธ ์žˆ๋Š” ํ’€์ด์˜€๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.
    ๊ทธ๋„ ๊ทธ๋Ÿด ๊ฒƒ์ด ์• ์ดˆ์— BFS ์ˆœ์„œ๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฒƒ๋„ ๋‘ ๋ฒˆ ๋ด์•ผ ์ดํ•ด๊ฐ€ ๊ฐ”๋‹ค๋ฉด… ๋ญ ๋ง ๋‹คํ•œ ์ •๋„์ง€ ์•Š์„๊นŒ..ใ… ใ… 
    ์ง๊ด€์ ์ธ DFS์— ๋น„ํ•ด BFS๋Š” ์ˆœ์„œ๊ฐ€ ์‚ด์ง ํ—ท๊ฐˆ๋ฆฌ๊ธด ํ–ˆ์ง€๋งŒ ๊ทธ๋ž˜๋„ ๋…ธ๋“œ ์›€์ง์ด๋Š” ์ˆœ์„œ๋Š” ์ดํ•ดํ–ˆ๋Š”๋ฐ, ๋ง‰์ƒ ๋ฌธ์ œ๋ฅผ ํ’€๋ ค๊ณ  ํ•˜๋‹ˆ ์•Œ๋“ฏ ๋ง๋“ฏํ•ด์„œ ai ๋„์›€์„ ์ข€ ๋งŽ์ด ๋ฐ›์•˜๋‹ค…

    BFS ๋ฌธ์ œ์—์„œ ์†”์งํžˆ ์ฒ˜์Œ์— ๋ญ˜ ๋ชจ๋ฅด๋Š”์ง€๋„ ๋ชฐ๋ž๋‹ค. DFS๋Š” ์ƒํ•˜์ขŒ์šฐ๋ฅผ ์ง์ ‘ dfs(x-1, y), dfs(x+1, y) ์ด๋ ‡๊ฒŒ ์จ์คฌ๋Š”๋ฐ, BFS์—์„œ๋Š” ์™œ for i in range(4) ๋กœ ๋ฌถ๋Š”์ง€๋ถ€ํ„ฐ ์ดํ•ด๊ฐ€ ์•ˆ ๋๋‹ค. ์•Œ๊ณ  ๋ณด๋‹ˆ ๊ฒฐ๊ณผ๋Š” ๋˜‘๊ฐ™๊ณ  ๊ทธ๋ƒฅ for๋ฌธ์œผ๋กœ ์ค„์ธ ๊ฒƒ๋ฟ์ด์—ˆ๋Š”๋ฐ, ๊ทธ๊ฑธ ๋ชจ๋ฅด๋‹ˆ๊นŒ ์ฝ”๋“œ ์ž์ฒด๊ฐ€ ๋‚ฏ์„ค๊ฒŒ ๋А๊ปด์กŒ๋˜ ๊ฒƒ ๊ฐ™๋‹ค.

    ๊ทธ๋ฆฌ๊ณ  queue.append((x, y)) ๊ฐ€ ์™œ ์‹œ์ž‘์ ์ด ๋˜๋Š”์ง€๋„ ํ—ท๊ฐˆ๋ ธ๋‹ค. ์ฑ…์—์„œ๋Š” visited[start] = True ๋กœ ๋ฐฉ๋ฌธ์ฒ˜๋ฆฌ๋ฅผ ๋”ฐ๋กœ ํ–ˆ๋Š”๋ฐ, ์—ฌ๊ธฐ์„œ๋Š” ๊ทธ๋Ÿฐ ๊ฒŒ ์—†์œผ๋‹ˆ๊นŒ ์–ด๋””์„œ ์‹œ์ž‘ํ•˜๋Š” ๊ฑด์ง€ ๊ฐ์ด ์•ˆ ์™”๋‹ค. ์•Œ๊ณ  ๋ณด๋‹ˆ bfs(0, 0) ์œผ๋กœ ํ˜ธ์ถœํ•  ๋•Œ x=0, y=0 ์ด ํ•จ์ˆ˜๋กœ ๋“ค์–ด๊ฐ€๊ณ , ๊ทธ๊ฒŒ ํ์— ๋“ค์–ด๊ฐ€๋Š” ๊ฑฐ์˜€๋‹ค. ๋‹น์—ฐํ•œ ๊ฑด๋ฐ ๋‹น์—ฐํ•˜๊ฒŒ ์•ˆ ๋А๊ปด์กŒ๋‹ค.

    ์ œ์ผ ์˜ค๋ž˜ ๊ฑธ๋ฆฐ ๊ฑด ์—ญ์‹œ graph[nx][ny] = graph[x][y] + 1 ์ด ์™œ ์ตœ๋‹จ๊ฑฐ๋ฆฌ๊ฐ€ ๋˜๋Š”์ง€์˜€๋‹ค. DFS์—์„œ๋Š” result += 1 ๋กœ ๋ฉ์–ด๋ฆฌ ๊ฐœ์ˆ˜๋ฅผ ์…Œ๋Š”๋ฐ, ์—ฌ๊ธฐ์„œ๋Š” ์™œ ๊ทธ๋ž˜ํ”„ ๊ฐ’ ์ž์ฒด๋ฅผ ๋ฐ”๊พธ๋Š”์ง€ ์ „ํ˜€ ์ดํ•ด๊ฐ€ ์•ˆ ๋๋‹ค. ์„ค๋ช…์„ ๋“ค์–ด๋„ ๋ชจ๋ฅด๊ฒ ์–ด์„œ ๊ฒฐ๊ตญ (0,0) ์—์„œ (4,5) ๊นŒ์ง€ ํ•œ ์นธ์”ฉ ์ง์ ‘ ๋”ฐ๋ผ๊ฐ€๋ดค๋‹ค.

    ์‹œ์ž‘์  (0,0) = 1 ์—์„œ ์ถœ๋ฐœํ•ด์„œ ์•„๋ž˜ (1,0) ์œผ๋กœ ์ด๋™ํ•˜๋ฉด 1+1=2, ๊ฑฐ๊ธฐ์„œ ์˜ค๋ฅธ์ชฝ (1,1) ์œผ๋กœ ๊ฐ€๋ฉด 2+1=3… ์ด๋ ‡๊ฒŒ ํ•œ ์นธ์”ฉ ๋”ฐ๋ผ๊ฐ€๋‹ค ๋ณด๋‹ˆ๊นŒ ๋„์ฐฉ์  (4,5) ์— 10 ์ด ๊ธฐ๋ก๋˜๋Š” ๊ณผ์ •์ด ๋ˆˆ์— ๋ณด์˜€๋‹ค. ์ค‘๊ฐ„์— ์ˆซ์ž๊ฐ€ ๊ฒน์น˜๋Š” ์นธ๋„ ์žˆ์—ˆ๋Š”๋ฐ, ๊ทธ๊ฑด ์‹œ์ž‘์ ์—์„œ ๊ฐ™์€ ๊ฑฐ๋ฆฌ๋งŒํผ ๋–จ์–ด์ง„ ์นธ๋“ค์ด๋ผ ๊ฒน์ณ๋„ ์ƒ๊ด€์—†๋‹ค๋Š” ๊ฒƒ๋„ ๊ทธ๋•Œ ์ดํ•ดํ–ˆ๋‹ค.

    12๋‹จ๊ณ„๊นŒ์ง€ ํ•˜๋‚˜ํ•˜๋‚˜ ํ•ด๋ณด๊ณ  ๋‚˜์„œ์•ผ ์™œ ๊ทธ๋ ‡๊ฒŒ ๋˜๋Š”์ง€ ์ดํ•ดํ•œ ๋ฐ”๋ณด ๊ฐ™์€ ๋‚˜ ์ž์‹ … ์‹ฌ์ง€์–ด 4๋ฒˆ์งธ 5๋ฒˆ์งธ ์ค„ ๋ชจ๋‘๊ฐ€ 1๋กœ ๋˜์–ด์žˆ๋Š”๋ฐ ์™œ ์•ž ๋ถ€๋ถ„์€ ์ˆซ์ž๋ฅผ ์•ˆ ์„ธ๋Š” ๊ฑฐ๋ƒ๊ณ  ๋ฉ์ฒญํ•˜๊ฒŒ๋„ ๋ฌผ์–ด๋ดค๋‹ค..ใ… ใ… 

    BFS๋Š” ๊ฐ€๊นŒ์šด ๊ณณ๋ถ€ํ„ฐ ํผ์ ธ๋‚˜๊ฐ€๊ธฐ ๋•Œ๋ฌธ์— ๋„์ฐฉ์ ์— ์ฒ˜์Œ ๋‹ฟ๋Š” ์ˆœ๊ฐ„์ด ์ตœ๋‹จ๊ฑฐ๋ฆฌ์ž„์ด ๋ณด์žฅ๋œ๋‹ค. ๊ทธ๋ž˜์„œ 4, 5๋ฒˆ์งธ ์ค„ ์™ผ์ชฝ ์นธ๋“ค์€ ๊ตณ์ด ํƒ์ƒ‰ํ•  ํ•„์š”๊ฐ€ ์—†๊ณ , return graph[N-1][M-1] ํ•œ ์ค„๋กœ ๋๋‚ผ ์ˆ˜ ์žˆ๋Š” ๊ฑฐ์˜€๋‹ค. ์ง์ ‘ ๋”ฐ๋ผ๊ฐ€๋ณด๊ธฐ ์ „๊นŒ์ง€๋Š” ์ง„์งœ ํ•˜๋‚˜๋„ ๋ชฐ๋ž๋Š”๋ฐ, ํ•œ ์นธ์”ฉ ๋ณด๊ณ  ๋‚˜๋‹ˆ๊นŒ ๊ทธ์ œ์„œ์•ผ ์ดํ•ด๊ฐ€ ๋๋‹ค.

  • ๋‚œ์ด๋„:ย โ—โ—โ—‹ |ย ํ’€์ด ์‹œ๊ฐ„:ย 30๋ถ„ |ย ์‹œ๊ฐ„ ์ œํ•œ:ย 1์ดˆ |ย ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ:ย 128MB

    ๋ฌธ์ œ:ย N ร— M ํฌ๊ธฐ์˜ ์–ผ์Œ ํ‹€์ด ์žˆ๋‹ค. ๊ตฌ๋ฉ์ด ๋šซ๋ ค ์žˆ๋Š” ๋ถ€๋ถ„์€ 0, ์นธ๋ง‰์ด๊ฐ€ ์กด์žฌํ•˜๋Š” ๋ถ€๋ถ„์€ 1๋กœ ํ‘œ์‹œ๋œ๋‹ค. ๊ตฌ๋ฉ์ด ๋šซ๋ ค ์žˆ๋Š” ๋ถ€๋ถ„๋ผ๋ฆฌ ์ƒ, ํ•˜, ์ขŒ, ์šฐ๋กœ ๋ถ™์–ด ์žˆ๋Š” ๊ฒฝ์šฐ ์„œ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผํ•œ๋‹ค. ์ด๋•Œ ์–ผ์Œ ํ‹€์˜ ๋ชจ์–‘์ด ์ฃผ์–ด์กŒ์„ ๋•Œ ์ƒ์„ฑ๋˜๋Š” ์ด ์•„์ด์Šคํฌ๋ฆผ์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ๋‹ค์Œ์˜ 4 ร— 5 ์–ผ์Œ ํ‹€ ์˜ˆ์‹œ์—์„œ๋Š” ์•„์ด์Šคํฌ๋ฆผ์ด ์ด 3๊ฐœ ์ƒ์„ฑ๋œ๋‹ค.

    0 0 1 1 0
    0 0 0 1 1
    1 1 1 1 1
    0 0 0 0 0
    ์ž…๋ ฅ ์กฐ๊ฑด:
    – ์ฒซ ๋ฒˆ์งธ ์ค„์— ์–ผ์Œ ํ‹€์˜ ์„ธ๋กœ ๊ธธ์ด N๊ณผ ๊ฐ€๋กœ ๊ธธ์ด M์ด ์ฃผ์–ด์ง„๋‹ค. (1 โ‰ฆ N, M โ‰ฆ 1,000)
    – ๋‘ ๋ฒˆ์งธ ์ค„๋ถ€ํ„ฐ N + 1๋ฒˆ์งธ ์ค„๊นŒ์ง€ ์–ผ์Œ ํ‹€์˜ ํ˜•ํƒœ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค.
    – ์ด๋•Œ ๊ตฌ๋ฉ์ด ๋šซ๋ ค์žˆ๋Š” ๋ถ€๋ถ„์€ 0, ๊ทธ๋ ‡์ง€ ์•Š์€ ๋ถ€๋ถ„์€ 1์ด๋‹ค.
    ์ถœ๋ ฅ ์กฐ๊ฑด:
    – ํ•œ ๋ฒˆ์— ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ์•„์ด์Šคํฌ๋ฆผ์˜ ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

    ๋ฌธ์ œ ํ’€์ด)

    ์ด ์ฑ•ํ„ฐ ์•ž์ชฝ์—์„œ ์„ค๋ช…ํ•œ ๊ฒƒ ์ฒ˜๋Ÿผ DFS ๋ฐฉ์‹ ์•„๋‹ˆ๋ฉด BFS ๋ฐฉ์‹์ธ๋ฐ, ์ด๊ฑฐ๋Š” DFS ๋ฐฉ์‹์œผ๋กœ ํ’€ ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.
    DFS (Depth-First Search)๋ž€ ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰์œผ๋กœ ๊ทธ๋ž˜ํ”„๋‚˜ ๋งต์—์„œ ํ•œ ์ง€์ ์—์„œ ์‹œ์ž‘ํ•ด ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๊ณณ์„ ๋๊นŒ์ง€ ํŒŒ๊ณ ๋“  ๋’ค, ๋” ์ด์ƒ ๊ฐˆ ๊ณณ์ด ์—†์œผ๋ฉด ๋˜๋Œ์•„์™€ ๋‹ค์Œ ๊ฒฝ๋กœ๋ฅผ ํƒ์ƒ‰ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. ๋งˆ์น˜ ๋ฏธ๋กœ๋ฅผ ํƒํ—˜ํ•  ๋•Œ ํ•œ ๋ฐฉํ–ฅ์œผ๋กœ ๋ง‰ํž ๋•Œ๊นŒ์ง€ ๊ณ„์† ๊ฐ€๋‹ค๊ฐ€ ๋ง‰ํžˆ๋ฉด ๋˜๋Œ์•„์™€ ๋‹ค๋ฅธ ๊ธธ์„ ์ฐพ๋Š” ๊ฒƒ๊ณผ ๊ฐ™๋‹ค.
    ์ด ๋ฌธ์ œ์—์„œ๋Š” 0 ์ธ ์นธ์„ ๋ฐœ๊ฒฌํ•  ๋•Œ๋งˆ๋‹ค DFS๋ฅผ ํ˜ธ์ถœํ•ด ์ƒํ•˜์ขŒ์šฐ๋กœ ์—ฐ๊ฒฐ๋œ ๋ชจ๋“  0 ์„ ๋ฐฉ๋ฌธ ์ฒ˜๋ฆฌ(1 ๋กœ ๋ณ€๊ฒฝ)ํ•œ๋‹ค. DFS๊ฐ€ ํ•œ ๋ฒˆ ํ˜ธ์ถœ๋˜๋ฉด ์—ฐ๊ฒฐ๋œ 0 ๋ฉ์–ด๋ฆฌ ์ „์ฒด๋ฅผ ํƒ์ƒ‰ํ•˜๋ฏ€๋กœ, DFS ํ˜ธ์ถœ ํšŸ์ˆ˜ = ์•„์ด์Šคํฌ๋ฆผ ๊ฐœ์ˆ˜๊ฐ€ ๋œ๋‹ค.
    ๊ทธ๋Ÿฌ๋ ค๋ฉด ์ผ๋‹จ, ์ „์— ์ƒํ•˜์ขŒ์šฐ๋‚˜ ์™•์‹ค๋‚˜์ดํŠธ, ๊ฒŒ์ž„ ๊ฐœ๋ฐœ ๊ตฌํ˜„์ฒ˜๋Ÿผ ๋งต ์‚ฌ์ด์ฆˆ๋ฅผ N๊ณผ M์œผ๋กœ ์Šคํ”Œ๋ฆฟ์œผ๋กœ ๋ฐ›์•„๋‘๊ณ (Nร— M), ๊ทธ๋ฆฌ๊ณ  ์ „์—๋Š” map_info๋ผ๊ณ  ๋ณ€์ˆ˜๋ฅผ ๋’€์ง€๋งŒ ์—ฌ๊ธฐ์„œ๋Š” ๊ทธ๋ž˜ํ”„๋ผ๊ณ  ๋ณ€์ˆ˜๋ฅผ ๋‘์—ˆ๋‹ค.

    ์•ž์—์„œ ๋ฐฐ์šด๋Œ€๋กœ dfs ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•ด์ฃผ๊ณ ,
    ๋งต ์‚ฌ์ด์ฆˆ๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ํฌ๋ฉด(ํ˜„์žฌ ์ขŒํ‘œ๊ฐ€ ๋งต ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚˜๋ฉด) false๋ฅผ ๋ฐ˜ํ™˜ํ•ด ํƒ์ƒ‰์„ ์ข…๋ฃŒํ•ด์ฃผ๊ณ ,
    ๊ทธ๋ž˜ํ”„ ์‹œ์ž‘์ (graph[x][y]๊ฐ€ 0์ด๋ผ๊ณ  ํ•  ๋•Œ(๊ตฌ๋ฉ์ด ๋šซ๋ ค ์žˆ์–ด ์•„์ด์Šคํฌ๋ฆผ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•  ๋•Œ), graph[x][y]๋ฅผ 1๋กœ ๋งŒ๋“ค์–ด์„œ ๋ฐฉ๋ฌธ ์ฒ˜๋ฆฌ ํ•ด์ฃผ๊ณ , ๊ทธ ์ž๋ฆฌ์—์„œ ์ƒํ•˜์ขŒ์šฐ๋กœ ์›€์ง์—ฌ๋ด์„œ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ณณ์€ ์—ญ์‹œ ๋ฐฉ๋ฌธ ์ฒ˜๋ฆฌ ํ•ด์ค€๋‹ค. ๊ทธ ์™ธ์—๋Š” ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ false๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

    result๋Š” ์ฒ˜์Œ 0์œผ๋กœ ์ถœ๋ฐœํ•ด์„œ i๋Š” N๋ฒˆ ๋งŒํผ, j๋Š” M๋ฒˆ ๋งŒํผ ๋Œ๋ฆฐ๋‹ค๊ณ  ํ•  ๋•Œ, dfs(i, j)๊ฐ€ True๋ผ๋ฉด, result๋ฅผ ํ•˜๋‚˜ ์”ฉ ๋Š˜๋ ค๊ฐ€๋ฉฐ ๊ณ„์† ์ง„ํ–‰ํ•œ๋‹ค.
    ๊ทธ๋ฆฌ๊ณ  ๋‚˜์„œ ์ด result ๊ฐฏ์ˆ˜(์•„์ด์Šคํฌ๋ฆผ ๊ฐฏ์ˆ˜)๋ฅผ ์„ธ๋Š” ๊ฒƒ์ด๋‹ค.

    N, M = map(int, input().split())
    graph = []
    for _ in range(N):
    graph.append(list(map(int, input())))
    def dfs(x, y):
    if x < 0 or x >= N or y < 0 or y >= M:
    return False
    if graph[x][y] == 0:
    graph[x][y] = 1 # ๋ฐฉ๋ฌธ ์ฒ˜๋ฆฌ
    dfs(x - 1, y) # ์ƒ
    dfs(x + 1, y) # ํ•˜
    dfs(x, y - 1) # ์ขŒ
    dfs(x, y + 1) # ์šฐ
    return True
    else:
    return False
    result = 0
    for i in range(N):
    for j in range(M):
    if dfs(i, j) == True:
    result += 1
    print(result)

    DFS๋Š” ๋…ธ๋“œ ์—ฐ๊ฒฐ ๋ฐฉ์‹์„ ์ดํ•ดํ•˜๋Š”๋ฐ ๋ฌธ์ œ๊ฐ€ ์—†์—ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ƒํ•˜์ขŒ์šฐ ๋ฌธ์ œ์—์„œ ๋ชจ๋‘ ๋‚˜์˜จ๊ฑฐ๋ผ dfs ์žฌ๊ท€ํ•จ์ˆ˜ ์ชฝ๋„ ์–ด๋ ต์ง€ ์•Š์•˜๋˜ ๊ฒƒ ๊ฐ™๊ณ , ๋”ฑํžˆ ํŠน๋ณ„ํ•  ๊ฒƒ๋„ ์—†์—ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค. ๋ฌผ๋ก  ์ด๊ฑธ ์ฒ˜์Œ๋ถ€ํ„ฐ ์•„๋ฌด๊ฒƒ๋„ ์•ˆ ๋ฐฐ์šด ์ƒํƒœ์—์„œ ์ƒ๊ฐํ•ด๋ณด๋ ค๋ฉด ๋‹ค๋ฅธ ๋ฌธ์ œ์ผ ๊ฒƒ ๊ฐ™๊ธด ํ•˜์ง€๋งŒ, ์—ฌ๋Ÿฌ ๋ฒˆ ๋น„์Šทํ•œ ๋ฌธ์ œ๋ฅผ ํ’€๋‹ค ๋ณด๋ฉด ๊ฐ์ด ์žกํž ๊ฒƒ ๊ฐ™๋‹ค. (์š”์ฆ˜ ๊ณ„์†ํ•˜๋Š” ๊ฒŒ ์ด๊ฑฐ๋‹ˆ๊นŒ ๋งต ๋ฌธ์ œ๋Š” ์ด์ œ ์ข€ ์‰ฌ์›Œ์ง€๋Š” ๋“ฏํ•œ ๋А๋‚Œ?)

    ์ž…๋ ฅ ์˜ˆ์‹œ๋ฅผ ์ค€ ๋Œ€๋กœ ์ž…๋ ฅํ•ด๋ณด๋ฉด ์•„๋ž˜์ฒ˜๋Ÿผ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜จ๋‹ค.

    ์ž…๋ ฅ ์˜ˆ์‹œ:
    15 14
    00000111100000
    11111101111110
    11011101101110
    11011101100000
    11011111111111
    11011111111100
    11000000011111
    01111111111111
    00000000011111
    01111111111000
    00011111111000
    00000001111000
    11111111110011
    11100011111111
    11100011111111

    ๋‹ต์•ˆ ์˜ˆ์‹œ ์ฝ”๋“œ๋Š” ๊ทธ๋ƒฅ ๋˜‘๊ฐ™์•˜๋‹ค. ๋‚˜๋Š” else: return False๋ฅผ ํ–ˆ์ง€๋งŒ ๋‹ต์•ˆ์€ ์•ˆ ํ•œ์ •๋„? ๊ทผ๋ฐ else: ๊ตณ์ด ์•ˆ ์จ๋„ ์ƒ๊ด€์—†๋‹ค๊ณ  ํ•œ๋‹ค…..

  • ๋‚œ์ด๋„:ย โ˜…โ˜…โ˜† |ย ํ’€์ด ์‹œ๊ฐ„:ย 40๋ถ„ |ย ์‹œ๊ฐ„ ์ œํ•œ:ย 1์ดˆ |ย ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ:ย 128MB

    ๋ฌธ์ œ:ย ํ˜„๋ฏผ์ด๋Š” ๊ฒŒ์ž„ ์บ๋ฆญํ„ฐ๊ฐ€ ๋งต ์•ˆ์—์„œ ์›€์ง์ด๋Š” ์‹œ์Šคํ…œ์„ ๊ฐœ๋ฐœ ์ค‘์ด๋‹ค. ์บ๋ฆญํ„ฐ๊ฐ€ ์žˆ๋Š” ์žฅ์†Œ๋Š” 1 ร— 1 ํฌ๊ธฐ์˜ ์ •์‚ฌ๊ฐํ˜•์œผ๋กœ ์ด๋ค„์ง„ N ร— M ํฌ๊ธฐ์˜ ์ง์‚ฌ๊ฐํ˜•์œผ๋กœ, ๊ฐ๊ฐ์˜ ์นธ์€ ์œก์ง€ ๋˜๋Š” ๋ฐ”๋‹ค์ด๋‹ค. ์บ๋ฆญํ„ฐ๋Š” ๋™์„œ๋‚จ๋ถ ์ค‘ ํ•œ ๊ณณ์„ ๋ฐ”๋ผ๋ณธ๋‹ค.
    ๋งต์˜ ๊ฐ ์นธ์€ (A, B)๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๊ณ , A๋Š” ๋ถ์ชฝ์œผ๋กœ๋ถ€ํ„ฐ ๋–จ์–ด์ง„ ์นธ์˜ ๊ฐœ์ˆ˜, B๋Š” ์„œ์ชฝ์œผ๋กœ๋ถ€ํ„ฐ ๋–จ์–ด์ง„ ์นธ์˜ ๊ฐœ์ˆ˜์ด๋‹ค. ์บ๋ฆญํ„ฐ๋Š” ์ƒํ•˜์ขŒ์šฐ๋กœ ์›€์ง์ผ ์ˆ˜ ์žˆ๊ณ , ๋ฐ”๋‹ค๋กœ ๋˜์–ด ์žˆ๋Š” ๊ณต๊ฐ„์—๋Š” ๊ฐˆ ์ˆ˜ ์—†๋‹ค.
    ์บ๋ฆญํ„ฐ์˜ ์›€์ง์ž„์„ ์„ค์ •ํ•˜๊ธฐ ์œ„ํ•ด ์ •ํ•ด๋†“์€ ๋งค๋‰ด์–ผ์€ ์ด๋Ÿฌํ•˜๋‹ค.

    1. ํ˜„์žฌ ์œ„์น˜์—์„œ ํ˜„์žฌ ๋ฐฉํ–ฅ์„ ๊ธฐ์ค€์œผ๋กœ ์™ผ์ชฝ ๋ฐฉํ–ฅ (๋ฐ˜์‹œ๊ณ„ ๋ฐฉํ–ฅ์œผ๋กœ 90๋„ ํšŒ์ „ํ•œ ๋ฐฉํ–ฅ)๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ๊ฐˆ ๊ณณ์„ ์ •ํ•œ๋‹ค.
    2. ์บ๋ฆญํ„ฐ์˜ ๋ฐ”๋กœ ์™ผ์ชฝ ๋ฐฉํ–ฅ์— ์•„์ง ๊ฐ€๋ณด์ง€ ์•Š์€ ์นธ์ด ์กด์žฌํ•œ๋‹ค๋ฉด, ์™ผ์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ ํšŒ์ „ํ•œ ๋‹ค์Œ ์™ผ์ชฝ์œผ๋กœ ํ•œ ์นธ์„ ์ „์ง„ํ•œ๋‹ค. ์™ผ์ชฝ ๋ฐฉํ–ฅ์— ๊ฐ€๋ณด์ง€ ์•Š์€ ์นธ์ด ์—†๋‹ค๋ฉด, ์™ผ์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ ํšŒ์ „๋งŒ ์ˆ˜ํ–‰ํ•˜๊ณ  1๋‹จ๊ณ„๋กœ ๋Œ์•„๊ฐ„๋‹ค.
    3. ๋งŒ์•ฝ ๋„ค ๋ฐฉํ–ฅ ๋ชจ๋‘ ์ด๋ฏธ ๊ฐ€๋ณธ ์นธ์ด๊ฑฐ๋‚˜ ๋ฐ”๋‹ค๋กœ ๋˜์–ด ์žˆ๋Š” ์นธ์ธ ๊ฒฝ์šฐ์—๋Š”, ๋ฐ”๋ผ๋ณด๋Š” ๋ฐฉํ–ฅ์„ ์œ ์ง€ํ•œ ์ฑ„๋กœ ํ•œ ์นธ ๋’ค๋กœ ๊ฐ€๊ณ  1๋‹จ๊ณ„๋กœ ๋Œ์•„๊ฐ„๋‹ค. ๋‹จ, ์ด๋•Œ ๋’ค์ชฝ ๋ฐฉํ–ฅ์ด ๋ฐ”๋‹ค์ธ ์นธ์ด๋ผ ๋’ค๋กœ ๊ฐˆ ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ์—๋Š” ์›€์ง์ž„์„ ๋ฉˆ์ถ˜๋‹ค.

    ํ˜„๋ฏผ์ด๋Š” ์œ„ ๊ณผ์ •์„ ๋ฐ˜๋ณต์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•˜๋ฉด์„œ ์บ๋ฆญํ„ฐ์˜ ์›€์ง์ž„์— ์ด์ƒ์ด ์žˆ๋Š”์ง€ ํ…Œ์ŠคํŠธํ•˜๋ ค๊ณ  ํ•œ๋‹ค.
    ๋งค๋‰ด์–ผ์— ๋”ฐ๋ผ ์บ๋ฆญํ„ฐ๋ฅผ ์ด๋™์‹œํ‚จ ๋’ค์—, ์บ๋ฆญํ„ฐ๊ฐ€ ๋ฐฉ๋ฌธํ•œ ์นธ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“œ์‹œ์˜ค.

    ์ž…๋ ฅ ์กฐ๊ฑด:
    – ์ฒซ์งธ ์ค„์— ๋งต์˜ ์„ธ๋กœ ํฌ๊ธฐ N๊ณผ ๊ฐ€๋กœ ํฌ๊ธฐ M์„ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ž…๋ ฅํ•œ๋‹ค. (3 โ‰ฆ N, M โ‰ฆ 50)
    – ๋‘˜์งธ ์ค„์— ๊ฒŒ์ž„ ์บ๋ฆญํ„ฐ๊ฐ€ ์žˆ๋Š” ์นธ์˜ ์ขŒํ‘œ (A, B)์™€ ๋ฐ”๋ผ๋ณด๋Š” ๋ฐฉํ–ฅ d๊ฐ€ ๊ฐ๊ฐ ์„œ๋กœ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ฃผ์–ด์ง„๋‹ค. ๋ฐฉํ–ฅ d์˜ ๊ฐ’์œผ๋กœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด 4๊ฐ€์ง€๊ฐ€ ์กด์žฌํ•œ๋‹ค.
    – 0: ๋ถ์ชฝ
    – 1: ๋™์ชฝ
    – 2: ๋‚จ์ชฝ
    – 3: ์„œ์ชฝ
    – ์…‹์งธ ์ค„๋ถ€ํ„ฐ ๋งต์ด ์œก์ง€์ธ์ง€ ๋ฐ”๋‹ค์ธ์ง€์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. N๊ฐœ์˜ ์ค„์— ๋งต์˜ ์ƒํƒœ๊ฐ€ ๋ถ์ชฝ๋ถ€ํ„ฐ ๋‚จ์ชฝ ์ˆœ์„œ๋Œ€๋กœ, ๊ฐ ์ค„์˜ ๋ฐ์ดํ„ฐ๋Š” ์„œ์ชฝ๋ถ€ํ„ฐ ๋™์ชฝ ์ˆœ์„œ๋Œ€๋กœ ์ฃผ์–ด์ง„๋‹ค. ๋งต์˜ ์™ธ๊ณฝ์€ ํ•ญ์ƒ ๋ฐ”๋‹ค๋กœ ๋˜์–ด ์žˆ๋‹ค.
    – 0: ์œก์ง€
    – 1: ๋ฐ”๋‹ค
    – ์ฒ˜์Œ์— ๊ฒŒ์ž„ ์บ๋ฆญํ„ฐ๊ฐ€ ์œ„์น˜ํ•œ ์นธ์˜ ์ƒํƒœ๋Š” ํ•ญ์ƒ ์œก์ง€์ด๋‹ค.

    ์ถœ๋ ฅ ์กฐ๊ฑด:
    – ์ฒซ์งธ ์ค„์— ์ด๋™์„ ๋งˆ์นœ ํ›„ ์บ๋ฆญํ„ฐ๊ฐ€ ๋ฐฉ๋ฌธํ•œ ์นธ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

    ๋ฌธ์ œ ํ’€์ด)

    ์ผ๋‹จ 1) ํ˜„์žฌ ๋ฐฉํ–ฅ์—์„œ ์™ผ์ชฝ์œผ๋กœ ํšŒ์ „ํ•œ๋‹ค๊ณ  ์น˜๋ฉด,
    ๋ถ(0) โ†’ ์„œ(3) โ†’ ๋‚จ(2) โ†’ ๋™(1) โ†’ ๋ถ(0)
    ์ด๊ฑธ ์ฝ”๋“œ๋กœ ํ‘œํ˜„ํ•˜๋ฉด, 2) ๊ฐ ๋ฐฉํ–ฅ์œผ๋กœ ํ•œ ์นธ ์ด๋™ํ•  ๋•Œ ์ขŒํ‘œ ๋ณ€ํ™”๋Š”,
    ๋ถ โ†’ ํ–‰ -1
    ๋‚จ โ†’ ํ–‰ +1
    ๋™ โ†’ ์—ด +1
    ์„œ โ†’ ์—ด -1
    ๊ทธ๋ฆฌ๊ณ  ๋งˆ์ง€๋ง‰์œผ๋กœ 3) ์–ด๋–ค ์นธ์„ ์ด๋ฏธ ๊ฐ€๋ดค๋Š”์ง€ ๊ธฐ๋กํ•˜๋Š” ๋ฐฉ๋ฌธ์„ ์ฒดํฌํ•ด์•ผ ํ•œ๋‹ค.
    ์ด๊ฑธ ์ฝ”๋“œ๋กœ ํ•ด๋ณด๋ฉด,

    N, M = map(int, input().split())
    A, B, d = map(int, input().split())
    map_info = []
    for _ in range(N):
    map_info.append(list(map(int, input().split())))
    # ๋ถ, ๋™, ๋‚จ, ์„œ ๋ฐฉํ–ฅ ์ •์˜
    dx = [-1, 0, 1, 0]
    dy = [0, 1, 0, -1]
    turn_left = [3, 0, 1, 2]
    visited = [[0] * M for _ in range(N)]
    visited[A][B] = 1
    result = 1
    count = 0
    while True:
    d = turn_left[d]
    count += 1 # ๋ถ๋™๋‚จ์„œ ๋ฐฉํ–ฅ์œผ๋กœ 1๊ฐœ์”ฉ ์ฆ๊ฐ€ํ•˜์—ฌ ์™ผ์ชฝ์œผ๋กœ ํšŒ์ „ํ•˜๋ฉด์„œ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธ
    nx = A + dx[d]
    ny = B + dy[d]
    if visited[nx][ny] == 0 and map_info[nx][ny] == 0: # ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š์€ ๊ณณ์ด ์œก์ง€(0)์ธ ๊ฒฝ์šฐ์—๋Š”
    visited[nx][ny] = 1 # ๋ฐฉ๋ฌธ ์ฒ˜๋ฆฌ
    A, B = nx, ny # ์ด๋™
    result += 1 # ์ด๋™ ํšŸ์ˆ˜ ์ฆ๊ฐ€
    count = 0 # ํšŒ์ „ ํšŸ์ˆ˜ ์ดˆ๊ธฐํ™”
    continue
    elif count == 4: # ๋„ค ๋ฐฉํ–ฅ์„ ๋ชจ๋‘ ํšŒ์ „ํ–ˆ๋Š”๋ฐ๋„ ํ•œ ๋ฒˆ๋„ ๋ชป ๊ฐ„ ๊ฒฝ์šฐ,
    nx = A - dx[d] # ๋งค๋‰ด์–ผ 3๋ฒˆ(๊ฐ€๋ณธ ์นธ์ด๊ฑฐ๋‚˜ ๋ฐ”๋‹ค๋กœ ๋˜์–ด์žˆ๋Š” ์นธ์ธ ๊ฒฝ์šฐ, ๋ฐ”๋ผ๋ณด๋Š” ๋ฐฉํ–ฅ์„ ์œ ์ง€ํ•œ ์ฑ„๋กœ ํ•œ์นธ ๋’ค๋กœ ๊ฐ€๊ณ  1๋‹จ๊ณ„๋กœ ๋Œ์•„๊ฐ„๋‹ค.)
    ny = B - dy[d]
    if map_info[nx][ny] == 0: # ๋’ค๋กœ ๊ฐˆ ๋•Œ, ์œก์ง€๋ผ๋ฉด ์ด๋™ํ•˜๊ธฐ
    A, B = nx, ny
    else: # ๋’ค๋กœ ๊ฐˆ ๋•Œ, ๋ฐ”๋‹ค๋ผ๋ฉด ์›€์ง์ž„ ๋ฉˆ์ถ”๊ธฐ
    break
    count = 0
    print(result)

    ๋„ˆ๋ฌด ๋ณต์žกํ•ด์„œ ์ •๋ง ํ•˜๋‚˜ํ•˜๋‚˜ ์ดํ•ดํ•ด ๊ฐ€๋ฉด์„œ ์ดํ•ด ์•ˆ๋˜๋Š” ๋ถ€๋ถ„์€ ๋‹ค์‹œ ๋˜ aiํ•œํ…Œ ๋ฌผ์–ด๊ฐ€๋ฉด์„œ ํ’€์–ด ๋ƒˆ๋‹ค!!
    ๋งค๋‰ด์–ผ์„ ํ•˜๋‚˜ํ•˜๋‚˜ ๋œฏ์–ด์„œ ๋ด์•ผํ•˜๊ณ  ์ž…๋ ฅ ์กฐ๊ฑด๊ณผ ์ถœ๋ ฅ ์กฐ๊ฑด์„ ์ƒ๊ฐํ•˜๋ฉด์„œ ํ•ด์•ผํ•ด์„œ ์ƒ๊ฐ๋ณด๋‹ค ์ง„์งœ ํ’€์ด๊ฐ€ ์–ด๋ ค์› ๋‹ค.. (๋‚œ์ด๋„๊ฐ€ ๋ณ„ 3๊ฐœ์ค‘ 2๊ฐœ์ธ๋ฐ ๋ฒŒ์จ๋ถ€ํ„ฐ ์ด๋Ÿฌ๋ฉด…ใ… ใ… ใ… ใ… ) ๊ทธ๋ฆฌ๊ณ  ์ƒ๊ฐ๋ณด๋‹ค ๋„ˆ๋ฌด ๊ธด๋ฐ ์ง€๊ธˆ๊นŒ์ง€ ์ด๋ ‡๊ฒŒ ๊ธด ์ฝ”๋“œ๊ฐ€ ์—†์—ˆ์–ด์„œ ์ด๊ฒŒ ๋งž๋‚˜ ํ•˜๋Š” ์˜๋ฌธ๋„ ๋“ค์—ˆ๋‹ค.

    ๊ทธ๋ฆฌ๊ณ  ์ž…๋ ฅ ์˜ˆ์‹œ๋ฅผ ํ•˜๋‚˜ํ•˜๋‚˜ ์ž…๋ ฅํ•ด์ค˜์•ผ ํ•˜๋Š”๋ฐ ๊ฑฐ๊ธฐ์„œ ์‹œ๊ฐ„์ด ์ƒ๊ฐ๋ณด๋‹ค ๊ฑธ๋ฆฌ๋Š”๋ฐ 1์ดˆ์•ˆ์— ๋˜๋Š”๊ฑฐ ๋งž๋‚˜.. ํ•˜๋Š” ์˜๋ฌธ๋„ ๋“ค๊ธด ํ•˜๋Š”๋ฐ….
    ์ผ๋‹จ ์ž…๋ ฅ ์˜ˆ์‹œ๋ฅผ ์ค€๋Œ€๋กœ ์ž…๋ ฅํ•ด๋ณด๋ฉด ์•„๋ž˜์ฒ˜๋Ÿผ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜จ๋‹ค.

    ์ž…๋ ฅ ์˜ˆ์‹œ:
    4 4 # 4 x 4 ๋งต ์ƒ์„ฑ
    1 1 0 # (1, 1)์— ๋ถ์ชฝ(0) ๋ฐฉํ–ฅ์„ ๋ฐ”๋ผ๋ณด๊ณ  ์„œ ์žˆ๋Š” ์บ๋ฆญํ„ฐ
    1 1 1 1 # ์ฒซ ์ค„์€ ๋ชจ๋‘ ๋ฐ”๋‹ค
    1 0 0 1 # ๋‘˜์งธ ์ค„์€ ๋ฐ”๋‹ค/์œก์ง€/์œก์ง€/๋ฐ”๋‹ค
    1 1 0 1 # ์…‹์งธ ์ค„์€ ๋ฐ”๋‹ค/๋ฐ”๋‹ค/์œก์ง€/๋ฐ”๋‹ค
    1 1 1 1 # ๋„ท์งธ ์ค„์€ ๋ชจ๋‘ ๋ฐ”๋‹ค

    ๊ทธ๋Ÿผ ์ฑ…์—์„œ๋Š” ํ•ด์„ค์„ ์–ด๋–ป๊ฒŒ ์ผ๋Š”์ง€ ๋ณด๋‹ˆ๊นŒ

    # N, M์„ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ž…๋ ฅ๋ฐ›๊ธฐ
    n, m = map(int, input().split())
    # ๋ฐฉ๋ฌธํ•œ ์œ„์น˜๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ๋งต์„ ์ƒ์„ฑํ•˜์—ฌ 0์œผ๋กœ ์ดˆ๊ธฐํ™”
    d = [[0] * m for _ in range(n)]
    # ํ˜„์žฌ ์บ๋ฆญํ„ฐ์˜ X ์ขŒํ‘œ, Y ์ขŒํ‘œ, ๋ฐฉํ–ฅ์„ ์ž…๋ ฅ๋ฐ›๊ธฐ
    x, y, direction = map(int, input().split())
    d[x][y] = 1 # ํ˜„์žฌ ์ขŒํ‘œ ๋ฐฉ๋ฌธ ์ฒ˜๋ฆฌ
    # ์ „์ฒด ๋งต ์ •๋ณด๋ฅผ ์ž…๋ ฅ๋ฐ›๊ธฐ
    array = []
    for i in range(n):
    array.append(list(map(int, input().split())))
    # ๋ถ, ๋™, ๋‚จ, ์„œ ๋ฐฉํ–ฅ ์ •์˜
    dx = [-1, 0, 1, 0]
    dy = [0, 1, 0, -1]
    # ์™ผ์ชฝ์œผ๋กœ ํšŒ์ „
    def turn_left():
    global direction
    direction -= 1
    if direction == -1:
    direction = 3
    # ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ์‹œ์ž‘
    count = 1
    turn_time = 0
    while True:
    # ์™ผ์ชฝ์œผ๋กœ ํšŒ์ „
    turn_left()
    nx = x + dx[direction]
    ny = y + dy[direction]
    # ํšŒ์ „ํ•œ ์ดํ›„ ์ •๋ฉด์— ๊ฐ€๋ณด์ง€ ์•Š์€ ์นธ์ด ์กด์žฌํ•˜๋Š” ๊ฒฝ์šฐ ์ด๋™
    if d[nx][ny] == 0 and array[nx][ny] == 0:
    d[nx][ny] = 1
    x = nx
    y = ny
    count += 1
    turn_time = 0
    continue
    # ํšŒ์ „ํ•œ ์ดํ›„ ์ •๋ฉด์— ๊ฐ€๋ณด์ง€ ์•Š์€ ์นธ์ด ์—†๊ฑฐ๋‚˜ ๋ฐ”๋‹ค์ธ ๊ฒฝ์šฐ
    else:
    turn_time += 1
    # ๋„ค ๋ฐฉํ–ฅ ๋ชจ๋‘ ๊ฐˆ ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ
    if turn_time == 4:
    nx = x - dx[direction]
    ny = y - dy[direction]
    # ๋’ค๋กœ ๊ฐˆ ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ด๋™ํ•˜๊ธฐ
    if array[nx][ny] == 0:
    x = nx
    y = ny
    # ๋’ค๊ฐ€ ๋ฐ”๋‹ค๋กœ ๋ง‰ํ˜€์žˆ๋Š” ๊ฒฝ์šฐ
    else:
    break
    turn_time = 0
    # ์ •๋‹ต ์ถœ๋ ฅ
    print(count)

    ๋‹ต์•ˆ ์˜ˆ์‹œ ์ฝ”๋“œ๊ฐ€ ๋” ์งง์„ ์ค„ ์•Œ์•˜๋Š”๋ฐ ํ›จ์”ฌ ๋” ๊ธธ๊ณ  ๋ณต์žกํ•ด ๋ณด์—ฌ์„œ ๋†€๋ž์ง€๋งŒ… ๋Œ€๋ถ€๋ถ„ ๋น„์Šทํ•˜๊ธด ํ–ˆ๋‹ค. ๊ทผ๋ฐ global์ด ๋ญ”์ง€๋ฅผ ๋ชฐ๋ผ์„œ ์ฐพ์•„๋ดค๋‹ค.
    global์€ ํ•จ์ˆ˜ ๋ฐ–์— ์žˆ๋Š” ๋ณ€์ˆ˜๋ฅผ ํ•จ์ˆ˜ ์•ˆ์—์„œ ์ˆ˜์ •ํ•  ๋•Œ ์“ฐ๋Š”๊ฑฐ๋ผ๊ณ  ํ•œ๋‹ค.
    ์˜ˆ๋ฅผ ๋“ค๋ฉด ์•„๋ž˜์ฒ˜๋Ÿผ ๋˜๊ฒ ๋‹ค.

    direction = 0 # ํ•จ์ˆ˜ ๋ฐ–์— ์žˆ๋Š” ๋ณ€์ˆ˜
    def turn_left():
    direction -= 1 # โŒ ์ด๋Ÿฌ๋ฉด ์—๋Ÿฌ๋‚จ! ํ•จ์ˆ˜ ์•ˆ์—์„œ ๋ฐ–์˜ ๋ณ€์ˆ˜ ์ˆ˜์ • ์•ˆ๋จ
    def turn_left():
    global direction # "๋ฐ–์— ์žˆ๋Š” direction ์“ธ ๊ฑฐ์•ผ" ์„ ์–ธ
    direction -= 1 # โœ… ์ด์ œ ์ˆ˜์ • ๊ฐ€๋Šฅ!

    ๊ทธ ์™ธ์—๋„ ๋‚ด ์ฝ”๋“œ์—์„  turn_left๋ฅผ ๊ฐ๊ฐ ๋ฆฌ์ŠคํŠธ๋กœ [3, 0, 1, 2]๋กœ ๋„ฃ์–ด์คฌ๋Š”๋ฐ ์—ฌ๊ธฐ์„œ๋Š” turn_left()๋ฅผ ํ•จ์ˆ˜๋กœ ๋„ฃ์–ด๋ฒ„๋ ธ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚˜๋Š” count๋ฅผ ์ผ๋Š”๋ฐ ์—ฌ๊ธฐ์„œ๋Š” turn_time์ด๋ผ๋Š” ๊ฑธ๋กœ ๋ฐ”๊ฟ”์คฌ๊ณ .. ๋ญ ์ด๊ฑด ๋ณ€์ˆ˜ ์ด๋ฆ„์ด๋‹ˆ ๋‹ค๋ฅผ ๊ฑด ์—†์„ ๊ฒƒ ๊ฐ™๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์—ฌ๊ธฐ์„œ๋Š” direction -= 1 ๋กœ ํ•ด์ฃผ๊ณ  global์„ ์ผ๋‹ค๋ฉด, ๋‚˜๋Š” d = turn_left[d]๋ฅผ ํ•ด์ค˜์„œ turn_left ๋ฆฌ์ŠคํŠธ์—์„œ ์ธ๋ฑ์Šค๋กœ ๋ฝ‘์•„๋‚ด๊ฒŒ ๋งŒ๋“ค์—ˆ๋‹ค๋Š” ๊ฒŒ ๋‹ค๋ฅด๋‹ค๋ฉด ๋‹ค๋ฅผ๊นŒ..? ๊ทธ๋ฆฌ๊ณ  ์—ฌ๊ธฐ์„œ๋Š” direction ์—์„œ -1์”ฉ ๋นผ์ฃผ๋Š” ๊ฑธ๋กœ ์™ผ์ชฝ์œผ๋กœ ๋„๋Š”๋ฐ, ๊ทธ๋Ÿฌ๋‹ค ๋ณด๋‹ˆ 3์„ ์ฒ˜๋ฆฌ ๋ชปํ•ด์„œ if direction == -1์ด๋ฉด direction = 3์ด๋ผ๊ณ  ๋”ฐ๋กœ ๋” ์ ์–ด์ฃผ๋‹ค๋ณด๋‹ˆ ํ•ด์„ค์ด ๋” ๋ณต์žกํ•ด์ง€๊ณ  ๊ธธ์–ด์ง„ ๊ฒƒ ๊ฐ™์€๋ฐ.. ๊ทธ๋Ÿผ ๋‚ด ์ฝ”๋“œ๊ฐ€ ๋” ๋‚˜์€๊ฑฐ ์•„๋‹Œ๊ฐ€ ์‹ถ๊ธฐ๋„…?ใ…Žใ…Ž;
    ํ•˜์—ฌํŠผ, ๊ทธ๋ž˜๋„ global์ด๋ผ๋Š” ์ƒˆ๋กœ์šด ์ฝ”๋“œ๋ฅผ ํ•˜๋‚˜ ๋ฐฐ์› ๋‹ค.
    ์•„๋ž˜๋Š” ์ฑ…์— ์จ ์žˆ๋Š” ๋ฌธ์ œ ํ•ด์„ค์ด๋‹ค.

    ๋ฌธ์ œ ํ•ด์„ค: ์ „ํ˜•์ ์ธ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ฌธ์ œ์ด๋‹ค. ์‚ผ์„ฑ์ „์ž ๊ณต์ฑ„ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ์—์„œ ์ž์ฃผ ์ถœ์ œ๋˜๋Š” ๋Œ€ํ‘œ์ ์ธ ์œ ํ˜•์ด๊ธฐ๋„ ํ•˜๋‹ค. ๋ณ„๋„์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ํ•„์š”ํ•˜๊ธฐ๋ณด๋‹ค๋Š” ๋ฌธ์ œ์—์„œ ์š”๊ตฌํ•˜๋Š” ๋‚ด์šฉ์„ ์˜ค๋ฅ˜์—†์ด ์„ฑ์‹คํ•˜๊ฒŒ ๊ตฌํ˜„๋งŒ ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ํ’€ ์ˆ˜ ์žˆ๋‹ค๋Š” ํŠน์ง•์ด ์žˆ๋‹ค.
    ๋‹ค๋งŒ, ๋ฌธ์ œ๊ฐ€ ๊ธธ๊ณ  ๋ฌธ์ œ๋ฅผ ๋ฐ”๋ฅด๊ฒŒ ์ดํ•ดํ•˜์—ฌ ์†Œ์Šค์ฝ”๋“œ๋กœ ์˜ฎ๊ธฐ๋Š” ๊ณผ์ •์ด ๊ฐ„๋‹จํ•˜์ง€ ์•Š๋‹ค. ๋”ฐ๋ผ์„œ ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ์ž˜ ํ’€ ์ˆ˜ ์žˆ๋„๋ก ๋ฐ˜๋ณต์ ์ธ ์ˆ™๋‹ฌ์ด ํ•„์š”ํ•˜๋‹ค.
    ๋ฌธ์ œ ํ’€์ด๋ฅผ ์œ„ํ•œ ์ค‘์š”ํ•œ ํ…Œํฌ๋‹‰์„ ๋‹ค์‹œ ์„ค๋ช…ํ•˜์ž๋ฉด, ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฐฉํ–ฅ์„ ์„ค์ •ํ•ด์„œ ์ด๋™ํ•˜๋Š” ๋ฌธ์ œ ์œ ํ˜•์—์„œ๋Š” dx, dy๋ผ๋Š” ๋ณ„๋„์˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์–ด ๋ฐฉํ–ฅ์„ ์ •ํ•˜๋Š” ๊ฒƒ์ด ํšจ๊ณผ์ ์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ์˜ ๋‹ต์•ˆ ์˜ˆ์‹œ ์ฝ”๋“œ์—์„œ๋Š” ํ˜„์žฌ ์บ๋ฆญํ„ฐ๊ฐ€ ๋ถ์ชฝ์„ ๋ฐ”๋ผ๋ณด๊ณ  ์žˆ์„ ๋•Œ๋Š” ๋ถ์ชฝ์œผ๋กœ ์ด๋™ํ•˜๊ธฐ ์œ„ํ•ด x์™€ y์˜ ์ขŒํ‘œ๋ฅผ ๊ฐ๊ฐ dx[0], dy[0]๋งŒํผ ๋”ํ•œ๋‹ค. ๋‹ค์‹œ ๋งํ•ด ํ˜„์žฌ ์œ„์น˜์—์„œ (-1, 0)๋งŒํผ ์ด๋™์‹œํ‚ค๋Š” ๊ฒƒ์ด๋‹ค. ์ด์ฒ˜๋Ÿผ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋ฉด, ๋ฐ˜๋ณต๋ฌธ์„ ์ด์šฉํ•˜์—ฌ ๋ชจ๋“  ๋ฐฉํ–ฅ์„ ์ฐจ๋ก€๋Œ€๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์—์„œ ์œ ์šฉํ•˜๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‹ต์•ˆ ์˜ˆ์‹œ ์ฝ”๋“œ์—์„œ๋Š” ๋ฆฌ์ŠคํŠธ ์ปดํ”„๋ฆฌํ—จ์…˜ ๋ฌธ๋ฒ•์„ ์‚ฌ์šฉํ•ด 2์ฐจ์› ๋ฆฌ์ŠคํŠธ๋ฅผ ์ดˆ๊ธฐํ™”ํ—€๋‹ค (global์„ ๋งํ•˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค.) ํŒŒ์ด์ฌ์—์„œ 2์ฐจ์› ๋ฆฌ์ŠคํŠธ๋ฅผ ์„ ์–ธํ•  ๋•Œ๋Š” ์ปดํ”„๋ฆฌํ—จ์…˜์„ ์ด์šฉํ•˜๋Š” ๊ฒƒ์ด ํšจ์œจ์ ์ด๋ผ๋Š” ์ ์„ ๊ธฐ์–ตํ•˜์ž. ์™ผ์ชฝ์œผ๋กœ ํšŒ์ „ํ•˜๋Š” ํ•จ์ˆ˜ turn_left()์—์„œ global ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ, ์ด๋Š” ์ •์ˆ˜ํ˜• ๋ณ€์ˆ˜์ธ direction ๋ณ€์ˆ˜๊ฐ€ ํ•จ์ˆ˜ ๋ฐ”๊นฅ์—์„œ ์„ ์–ธ๋œ ์ „์—ญ๋ณ€์ˆ˜์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

    ์ด๊ฒƒ๋„ ์ƒํ•˜์ขŒ์šฐ๋ฅผ ์ดํ•ดํ•˜๊ณ  ๋‚˜๋‹ˆ ํ’€์ด๊ฐ€ ์ข€ ๋ณต์žกํ•˜๊ธด ํ•ด๋„ ์•„์˜ˆ ์ ‘๊ทผ์„ ๋ชปํ•  ์ •๋„๋Š” ์•„๋‹ˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค.

  • ๋‚œ์ด๋„: โ˜…โ˜†โ˜† | ํ’€์ด ์‹œ๊ฐ„: 20๋ถ„ | ์‹œ๊ฐ„ ์ œํ•œ: 1์ดˆ | ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ: 128MB

    ๋ฌธ์ œ: ํ–‰๋ณต ์™•๊ตญ์˜ ์™•์‹ค ์ •์›์€ ์ฒด์ŠคํŒ๊ณผ ๊ฐ™์€ 8 ร— 8 ์ขŒํ‘œ ํ‰๋ฉด์ด๋‹ค. ์™•์‹ค ์ •์›์˜ ํŠน์ •ํ•œ ํ•œ ์นธ์— ๋‚˜์ดํŠธ๊ฐ€ ์„œ ์žˆ๋‹ค. ๋‚˜์ดํŠธ๋Š” ๋งค์šฐ ์ถฉ์„ฑ์Šค๋Ÿฌ์šด ์‹ ํ•˜๋กœ์„œ ๋งค์ผ ๋ฌด์ˆ ์„ ์—ฐ๋งˆํ•œ๋‹ค.
    ๋‚˜์ดํŠธ๋Š” ๋ง์„ ํƒ€๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๋™์„ ํ•  ๋•Œ๋Š” L์ž ํ˜•ํƒœ๋กœ๋งŒ ์ด๋™ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ •์› ๋ฐ–์œผ๋กœ๋Š” ๋‚˜๊ฐˆ ์ˆ˜ ์—†๋‹ค. ๋‚˜์ดํŠธ๋Š” ํŠน์ •ํ•œ ์œ„์น˜์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ 2๊ฐ€์ง€ ๊ฒฝ์šฐ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค.

    1. ์ˆ˜ํ‰์œผ๋กœ ๋‘ ์นธ ์ด๋™ํ•œ ๋’ค์— ์ˆ˜์ง์œผ๋กœ ํ•œ ์นธ ์ด๋™ํ•˜๊ธฐ
    2. ์ˆ˜์ง์œผ๋กœ ๋‘์นธ ์ด๋™ํ•œ ๋’ค์— ์ˆ˜ํ‰์œผ๋กœ ํ•œ ์นธ ์ด๋™ํ•˜๊ธฐ

    ์ด์ฒ˜๋Ÿผ 8 ร— 8 ์ขŒํ‘œ ํ‰๋ฉด์ƒ์—์„œ ๋‚˜์ดํŠธ์˜ ์œ„์น˜๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ ๋‚˜์ดํŠธ๊ฐ€ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ด๋•Œ ์™•์‹ค์˜ ์ •์›์—์„œ ํ–‰ ์œ„์น˜๋ฅผ ํ‘œํ˜„ํ•  ๋•Œ๋Š” 1๋ถ€ํ„ฐ 8๋กœ ํ‘œํ˜„ํ•˜๋ฉฐ, ์—ด ์œ„์น˜๋ฅผ ํ‘œํ˜„ํ•  ๋•Œ๋Š” a๋ถ€ํ„ฐ h๋กœ ํ‘œํ˜„ํ•œ๋‹ค.
    ์˜ˆ๋ฅผ ๋“ค์–ด ๋งŒ์•ฝ ๋‚˜์ดํŠธ๊ฐ€ a1์— ์žˆ์„ ๋•Œ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋Š” ๋‹ค์Œ 2๊ฐ€์ง€์ด๋‹ค. a1์˜ ์œ„์น˜๋Š” ์ขŒํ‘œ ํ‰๋ฉด์—์„œ ๊ตฌ์„์˜ ์œ„์น˜์— ํ•ด๋‹นํ•˜๋ฉฐ ๋‚˜์ดํŠธ๋Š” ์ •์›์˜ ๋ฐ–์œผ๋กœ๋Š” ๋‚˜๊ฐˆ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

    1. ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๋‘ ์นธ ์ด๋™ ํ›„ ์•„๋ž˜๋กœ ํ•œ ์นธ ์ด๋™ํ•˜๊ธฐ(c2)
    2. ์•„๋ž˜๋กœ ๋‘์นธ ์ด๋™ ํ›„ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ•œ์นธ ์ด๋™ํ•˜๊ธฐ(b3)
    ์ž…๋ ฅ ์กฐ๊ฑด:
    – ์ฒซ์งธ ์ค„์— 8 ร— 8 ์ขŒํ‘œ ํ‰๋ฉด์ƒ์—์„œ ํ˜„์žฌ ๋‚˜์ดํŠธ๊ฐ€ ์œ„์น˜ํ•œ ๊ณณ์˜ ์ขŒํ‘œ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋‘ ๋ฌธ์ž๋กœ ๊ตฌ์„ฑ๋œ ๋ฌธ์ž์—ด์ด ์ž…๋ ฅ๋œ๋‹ค. ์ž…๋ ฅ ๋ฌธ์ž๋Š” a1์ฒ˜๋Ÿผ ์—ด๊ณผ ํ–‰์œผ๋กœ ์ด๋ค„์ง„๋‹ค.
    ์ถœ๋ ฅ ์กฐ๊ฑด:
    – ์ฒซ์งธ ์ค„์— ๋‚˜์ดํŠธ๊ฐ€ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜์‹œ์˜ค.

    ์ผ๋‹จ ๋‚˜์ดํŠธ๊ฐ€ ํ˜„์žฌ ์œ„์น˜์—์„œ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉํ–ฅ์€ ์ด 8๊ฐ€์ง€์ด๋‹ค. L์ž ์ด๋™์ด๋ฏ€๋กœ,
    (-2, -1), (-2, 1), (2, -1), (2, 1), (-1, -2), (-1, 2), (1, -2), (1, 2)
    ์ด๊ฑธ ๋‹ค ์ถฉ์กฑํ•˜๋˜, ์ฒด์ŠคํŒ ๋ฐ–์œผ๋กœ ๋‚˜๊ฐ€์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค.
    ๊ทธ๋Ÿฌ๋ ค๋ฉด ์•„๋ž˜์ฒ˜๋Ÿผ ์“ฐ๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค.

    input_data = input()
    cols = ["a", "b", "c", "d", "e", "f", "g", "h"]
    rows = ["1", "2", "3", "4", "5", "6", "7", "8"]
    col = cols.index(input_data[0]) + 1
    row = int(input_data[1])
    steps = [(1, 2), (1, -2), (-1, 2), (-1, -2), (2, 1), (2, -1), (-2, 1), (-2, -1)]
    result = 0
    for step in steps:
    new_col = col + step[0]
    new_row = row + step[1]
    if 1 <= new_col <= 8 and 1 <= new_row <= 8:
    result += 1
    print(result)

    ๊ทธ๋Ÿผ a1์„ ๋„ฃ์—ˆ์„ ๋•Œ ์•„๋ž˜์™€ ๊ฐ™์€ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜จ๋‹ค.

    ์กฐ๊ธˆ ๊ท€์ฐฎ๊ธด ํ•˜์ง€๋งŒ ๋‚ด๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๋ฒ”์œ„๋Š” ์ € ์ •๋„์˜€๋‹ค. ๊ทธ๋Ÿผ ์ฑ…์—์„œ๋Š” ํ•ด์„ค์„ ์–ด๋–ป๊ฒŒ ์ผ๋Š”์ง€ ๋ณด๋‹ˆ๊นŒ

    # ํ˜„์žฌ ๋‚˜์ดํŠธ์˜ ์œ„์น˜ ์ž…๋ ฅ๋ฐ›๊ธฐ
    input_data = input()
    row = int(input_data[1])
    column = int(ord(input_data[0])) - int(ord('a')) + 1
    # ๋‚˜์ดํŠธ๊ฐ€ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” 8๊ฐ€์ง€ ๋ฐฉํ–ฅ ์ •์˜
    steps = [(-2, -1), (-1, -2), (1, -2), (2, -1), (2, 1), (1, 2), (-1, 2), (-2, 1)]
    # 8๊ฐ€์ง€ ๋ฐฉํ–ฅ์— ๋Œ€ํ•˜์—ฌ ๊ฐ ์œ„์น˜๋กœ ์ด๋™์ด ๊ฐ€๋Šฅํ•œ์ง€ ํ™•์ธ
    result = 0
    for step in steps:
    next_row = row + step[0]
    next_column = column + step[1]
    # ํ•ด๋‹น ์œ„์น˜๋กœ ์ด๋™์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด ์นด์šดํŠธ ์ฆ๊ฐ€
    if next_row >= 1 and next_row <= 8 and next_column >= 1 and next_column <= 8:
    result += 1
    print(result)

    ord๋ผ๋Š” ์ƒˆ๋กœ์šด ์ฝ”๋“œ๋ฅผ ์ผ๋Š”๋ฐ ์ฐพ์•„๋ณด๋‹ˆ ord()๋Š” ๋ฌธ์ž๋ฅผ ์•„์Šคํ‚ค์ฝ”๋“œ ์ˆซ์ž(์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ์ˆซ์ž?)๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ํ•จ์ˆ˜๋ผ๊ณ  ํ•œ๋‹ค. ๋ชจ๋“  ๋ฌธ์ž๋Š” ์ปดํ“จํ„ฐ ๋‚ด๋ถ€์—์„œ ์ˆซ์ž๋กœ ์ €์žฅ๋˜๋Š”๋ฐ, ์•ŒํŒŒ๋ฒณ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ด๋‹ค. a๋ถ€ํ„ฐ ์ˆœ์„œ๋Œ€๋กœ 97, 98, 99๋กœ ์˜ฌ๋ผ๊ฐ„๋‹ค๊ณ  ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ - ord('a')๋ฅผ ํ•ด์ค˜์„œ ‘a’๋ฅผ ๊ธฐ์ค€์ ์œผ๋กœ ์‚ผ์•„์„œ 0๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ฒŒ ๋งŒ๋“ค๊ณ  +1 ํ•ด์„œ 1๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ฒŒ ๋งž์ถ”๋Š”๊ฒƒ์ด๋‹ค.

    ๋ฌธ์ œ ํ•ด์„ค: ์™•์‹ค์˜ ๋‚˜์ดํŠธ ๋ฌธ์ œ๋Š” ๋‚˜์ดํŠธ์˜ ์ด๋™ ๊ฒฝ๋กœ๋ฅผ ํ™•์ธํ•˜๊ณ , 8 ร— 8 ์ขŒํ‘œ ํ‰๋ฉด์„ ๋ฒ—์–ด๋‚˜์ง€ ์•Š๋„๋ก ๊ฒ€์‚ฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๋‚˜์ดํŠธ๋Š” ๋‘ ๊ฐ€์ง€ ๋ฐฉ์‹์œผ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ ๊ฒฝ๋กœ์— ๋”ฐ๋ผ steps ๋ณ€์ˆ˜๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. ํ˜„์žฌ ์œ„์น˜์—์„œ ์ด๋™ ๊ฒฝ๋กœ๋ฅผ ๋”ํ•œ ํ›„, ํ‰๋ฉด ๋‚ด์— ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๊ณผ์ •์„ ๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. ๋˜ํ•œ ์ž…๋ ฅ์ด ํ–‰๊ณผ ์—ด์ด ์•„๋‹Œ ํ˜•ํƒœ์ผ ๊ฒฝ์šฐ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ๋„ ํ•„์š”ํ•˜๋ฏ€๋กœ ํŒŒ์ด์ฌ ๋ฌธ๋ฒ• ํ›ˆ๋ จ์ด ์ค‘์š”ํ•˜๋‹ค.

    ๊ธฐ์กด์— ์ƒํ•˜์ขŒ์šฐ์—์„œ ๋ฒ„๋ฒ…์˜€๋Š”๋ฐ ํ™•์‹คํžˆ ๊ทธ ๊ด€์ ์œผ๋กœ ๋„์ž…ํ•˜๋‹ˆ ์ด๋ฒˆ ๋ฌธ์ œ๋Š” ์–ด๋ ต์ง€ ์•Š์•˜๋‹ค.

  • ๋‚œ์ด๋„: โ˜…โ˜†โ˜† | ํ’€์ด ์‹œ๊ฐ„: 15๋ถ„ | ์‹œ๊ฐ„ ์ œํ•œ: 2์ดˆ | ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ: 128MB

    ๋ฌธ์ œ: ์ •์ˆ˜ N์ด ์ž…๋ ฅ๋˜๋ฉด 00์‹œ 00๋ถ„ 00์ดˆ๋ถ€ํ„ฐ N์‹œ 59๋ถ„ 59์ดˆ๊นŒ์ง€์˜ ๋ชจ๋“  ์‹œ๊ฐ ์ค‘์—์„œ 3์ด ํ•˜๋‚˜๋ผ๋„ ํฌํ•จ๋˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์˜ˆ๋ฅผ ๋“ค์–ด 1์„ ์ž…๋ ฅํ–ˆ์„ ๋•Œ ๋‹ค์Œ์€ 3์ด ํ•˜๋‚˜๋ผ๋„ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ ์„ธ์–ด์•ผ ํ•˜๋Š” ์‹œ๊ฐ์ด๋‹ค.

    – 00์‹œ 00๋ถ„ 03์ดˆ
    – 00์‹œ 13๋ถ„ 30์ดˆ

    ๋ฐ˜๋ฉด์— ๋‹ค์Œ์€ 3์ด ํ•˜๋‚˜๋„ ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฏ€๋กœ ์„ธ๋ฉด ์•ˆ๋˜๋Š” ์‹œ๊ฐ์ด๋‹ค.

    – 00์‹œ 02๋ถ„ 55์ดˆ
    – 01์‹œ 27๋ถ„ 45์ดˆ

    ์ž…๋ ฅ ์กฐ๊ฑด:
    – ์ฒซ์งธ ์ค„์— ์ •์ˆ˜ N์ด ์ž…๋ ฅ๋œ๋‹ค. (0 โ‰ฆ N โ‰ฆ 23)
    ์ถœ๋ ฅ ์กฐ๊ฑด:
    – 00์‹œ 00๋ถ„ 00์ดˆ๋ถ€ํ„ฐ N์‹œ 59๋ถ„ 59์ดˆ๊นŒ์ง€์˜ ๋ชจ๋“  ์‹œ๊ฐ ์ค‘์—์„œ 3์ด ํ•˜๋‚˜๋ผ๋„ ํฌํ•จ๋˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

    ์ผ๋‹จ, 00์‹œ 00๋ถ„ 00์ดˆ ~ N์‹œ 59๋ถ„ 59์ดˆ๊นŒ์ง€ ๋ชจ๋“  ์‹œ๊ฐ์„ ๋‹ค ํ™•์ธํ•ด๋ณธ๋‹ค.

    ๊ตฌ์กฐ์ ์œผ๋กœ ์‹œ๊ฐ์€
    ์‹œ: 0 ~ N
    ๋ถ„: 0 ~ 59
    ์ดˆ: 0 ~ 59
    ์ด๋‹ˆ๊นŒ…

    N = int(input())
    count = 0
    for h in range(N + 1):
    for m in range(60):
    for s in range(60):
    if "3" in str(h) or "3" in str(m) or "3" in str(s):
    count += 1
    print(count)

    ์˜ˆ๋ฅผ ๋“ค์–ด ์ฑ…์—์„œ์ฒ˜๋Ÿผ ์ž…๋ ฅ ์˜ˆ์‹œ 5๋ฅผ ๋„ฃ์œผ๋ฉด ์ถœ๋ ฅ ์˜ˆ์‹œ 11475๊ฐ€ ๋‚˜์˜ค๋Š”์ง€ ํ•œ๋ฒˆ ๋Œ๋ ค๋ดค๋‹ค.

    ์ •ํ™•ํ•˜๊ฒŒ ์ž˜ ๋‚˜์˜จ๋‹ค.

    ๊ทธ๋Ÿผ ์ฑ…์€ ์–ด๋–ป๊ฒŒ ๋ฌธ์ œ๋ฅผ ํ’€์—ˆ๋Š”์ง€ ํ™•์ธํ•ด๋ดค๋‹ค.
    ์™„์ „ ๋˜‘๊ฐ™๋‹ค…… ๋ณ€์ˆ˜ ๋ช‡๊ฐœ ๋นผ๊ณ ๋Š”..

    ๋ฌผ๋ก  ๋ง‰ํžˆ๋Š” ๋ถ€๋ถ„์—์„œ ai์˜ ๋„์›€์„ ๋ฐ›์•„๊ฐ€๋ฉฐ ํ’€๊ธฐ๋Š” ํ–ˆ์ง€๋งŒ ๋‚ด ์Šค์Šค๋กœ ํ’€์–ด๋‚ธ๊ฒŒ ํ•ด์„๊ณผ ๋˜‘๊ฐ™์•„์„œ ์†Œ๋ฆ„๋‹์•˜๋‹ค ใ…Žใ…Ž

    ์•ž์œผ๋กœ๋„ ๊ณ ๋ฏผํ•ด๊ฐ€๋ฉด์„œ ํ’€๋ฉด ๋ชจ๋‘ ๋‚ด๊ฒŒ ๋˜์ง€ ์•Š์„๊นŒ..

    ์•ž๋ถ€๋ถ„ ๊ฑฐ๋Š” ์ „ํ˜€ ๋‚ด ์Šค์Šค๋กœ ํ’€์ง€ ์•Š์•„์„œ ๋‚ด๊ฑธ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„  ์ข€ ๋” ์—ฐ์Šต์ด ํ•„์š”ํ•  ๊ฒƒ ๊ฐ™๋‹ค. ๋ง‰๋ง‰ํ–ˆ๋Š”๋ฐ ์กฐ๊ธˆ์”ฉ ํ•œ์ค„๊ธฐ ๋น›์ด ๋ณด์ด๋Š” ๊ฒƒ ๊ฐ™๋‹ค.

    ๋ฌธ์ œ ํ•ด์„ค: ์ด ๋ฌธ์ œ๋Š” ํ•˜๋ฃจ์˜ ๋ชจ๋“  ์‹œ๊ฐ์„ ์„ธ์–ด์„œ ์‰ฝ๊ฒŒ ํ’€ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋กœ, ํ•˜๋ฃจ๋Š” 86,400์ดˆ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์–ด ๊ฒฝ์šฐ์˜ ์ˆ˜๊ฐ€ ์ ์–ด ํŒŒ์ด์ฌ์˜ ๋ฌธ์ž์—ด ์—ฐ์‚ฐ์„ ํ†ตํ•ด 3์ด ํฌํ•จ๋˜์–ด ์žˆ๋Š”์ง€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ์‹œ๊ฐ์„ 1์”ฉ ์ฆ๊ฐ€์‹œํ‚ค๋ฉฐ 3์˜ ํฌํ•จ ์—ฌ๋ถ€๋ฅผ ๊ฒ€์‚ฌํ•˜๋ฉด ๋œ๋‹ค. ์ „์ฒด ๊ฒฝ์šฐ์˜ ์ˆ˜๋Š” 24 ร— 60 ร— 60์ด๋ฉฐ, ์™„์ „ ํƒ์ƒ‰(Brute Forcing) ์œ ํ˜•์œผ๋กœ ๋ถ„๋ฅ˜๋œ๋‹ค. ์™„์ „ ํƒ์ƒ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ฒ€์‚ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋ฉฐ, ๋ฐ์ดํ„ฐ ๊ฐœ์ˆ˜๊ฐ€ ์ ์€ ๊ฒฝ์šฐ์— ์ ํ•ฉํ•˜๋‹ค.