๋‚ด ์ธ์ƒ์—์„œ ๋ฏฟ์„ ๊ฑด ์˜ค์ง ๋‚˜ ์ž์‹ ๋ฟ!

The only one you can truly trust is yourself.

๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ/Python ํ”„๋กœ๊ทธ๋ž˜๋ฐ

ํŒŒ์ด์ฌ ์šฐ์„ ์ˆœ์œ„ํ, ๊ฒŒ์ž„ ๋งต ์ตœ๋‹จ๊ฑฐ๋ฆฌ, ๊ธธ์ฐพ๊ธฐ

๐ŸŽฎinspirer9 2023. 2. 8. 12:34
728x90
๋ฐ˜์‘ํ˜•

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต

  •  ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
    • ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต
      • ๊นŠ์ด/๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰(DFS/BFS)
        • ๊ฒŒ์ž„ ๋งต ์ตœ๋‹จ๊ฑฐ๋ฆฌ

๋ฌธ์ œ ๋ณด๊ธฐ

๋‚ด๊ฐ€ ํ‘ผ ๋ฐฉ์‹์€...

  • ํƒ์ƒ‰ํ•  ๋‹ค์Œ ์œ„์น˜๋“ค์€ ์šฐ์„ ์ˆœ์œ„ ํ์— ์ €์žฅํ–ˆ๊ณ ,
  • ์œ„์น˜ ์ €์žฅ์„ ์œ„ํ•œ ๋ฐฐ์—ด์„ ๋ฌธ์ œ์—์„œ ์ œ๊ณตํ•˜๋Š” maps์™€ ๊ฐ™์€ ํฌ๊ธฐ๋กœ ๋งŒ๋“ค์–ด์„œ inf ๊ฐ’์„ ๋„ฃ์–ด๋‘๊ณ  ํƒ์ƒ‰ํ–ˆ๋Š”๋ฐ...
from queue import PriorityQueue

def solution(maps):
    pq = PriorityQueue()

    dist = 1
    x, y = 0, 0
    sx, sy = 0, 0
    ex, ey = len(maps[0]), len(maps)
    pq.put([dist,(sx,sy)])

    INF = float("inf") #ํŒŒ์ด์ฌ 3.5 ์ด์ƒ์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
    footmap = [[INF for i in range(ex)] for j in range(ey)]

    while pq.empty() == False:
        t = pq.get()
        dist = t[0] 
        x = t[1][0]
        y = t[1][1]

        if dist < footmap[y][x] and maps[y][x] != 0 and sx <= x and x < ex and sy <= y and y < ey:
            footmap[y][x] = dist
            dist += 1
            if sx < x and maps[y][x-1] != 0:
                pq.put([dist,(x-1,y)])
            if x < ex-1 and maps[y][x+1] != 0:
                pq.put([dist,(x+1,y)])
            if sy < y and maps[y-1][x] != 0:
                pq.put([dist,(x,y-1)])
            if y < ey-1 and maps[y+1][x] != 0:
                pq.put([dist,(x,y+1)])

    if footmap[ey-1][ex-1] == INF:
        return -1
    else:
        return footmap[ey-1][ex-1]
์ •ํ™•์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (0.20ms, 10.3MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (0.15ms, 10.5MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (0.29ms, 10.4MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (0.28ms, 10.3MB)
ํ…Œ์ŠคํŠธ 5 ใ€‰	ํ†ต๊ณผ (0.36ms, 10.4MB)
ํ…Œ์ŠคํŠธ 6 ใ€‰	ํ†ต๊ณผ (0.27ms, 10.4MB)
ํ…Œ์ŠคํŠธ 7 ใ€‰	ํ†ต๊ณผ (0.41ms, 10.5MB)
ํ…Œ์ŠคํŠธ 8 ใ€‰	ํ†ต๊ณผ (0.28ms, 10.3MB)
ํ…Œ์ŠคํŠธ 9 ใ€‰	ํ†ต๊ณผ (0.39ms, 10.3MB)
ํ…Œ์ŠคํŠธ 10 ใ€‰	ํ†ต๊ณผ (0.36ms, 10.4MB)
ํ…Œ์ŠคํŠธ 11 ใ€‰	ํ†ต๊ณผ (0.18ms, 10.4MB)
ํ…Œ์ŠคํŠธ 12 ใ€‰	ํ†ต๊ณผ (0.13ms, 10.3MB)
ํ…Œ์ŠคํŠธ 13 ใ€‰	ํ†ต๊ณผ (0.27ms, 10.4MB)
ํ…Œ์ŠคํŠธ 14 ใ€‰	ํ†ต๊ณผ (0.21ms, 10.6MB)
ํ…Œ์ŠคํŠธ 15 ใ€‰	ํ†ต๊ณผ (0.17ms, 10.3MB)
ํ…Œ์ŠคํŠธ 16 ใ€‰	ํ†ต๊ณผ (0.08ms, 10.3MB)
ํ…Œ์ŠคํŠธ 17 ใ€‰	ํ†ต๊ณผ (0.65ms, 10.5MB)
ํ…Œ์ŠคํŠธ 18 ใ€‰	ํ†ต๊ณผ (0.10ms, 10.5MB)
ํ…Œ์ŠคํŠธ 19 ใ€‰	ํ†ต๊ณผ (0.06ms, 10.5MB)
ํ…Œ์ŠคํŠธ 20 ใ€‰	ํ†ต๊ณผ (0.06ms, 10.5MB)
ํ…Œ์ŠคํŠธ 21 ใ€‰	ํ†ต๊ณผ (0.05ms, 10.5MB)
ํšจ์œจ์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (165.44ms, 10.6MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (26.76ms, 10.7MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (68.42ms, 10.5MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (45.74ms, 10.5MB)

๋‹ค๋ฅธ ์‚ฌ๋žŒ ํ’€์ด ๋ณด๋‹ˆ๊นŒ ๋” ๊น”๋”ํ•œ ์ฝ”๋“œ๋“ค์ด ๋งŽ์•˜๋‹ค.

๋” ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์ž„.

from collections import deque

def solution(maps):
    x_move = [1, 0, -1, 0]
    y_move = [0, 1, 0, -1]

    x_h, y_h = (len(maps[0]), len(maps))
    queue = deque([(0, 0, 1)])

    while queue:
        x, y, d = queue.popleft()

        for i in range(4):
            nx = x + x_move[i]
            ny = y + y_move[i]

            if nx > -1 and ny > -1 and nx < x_h and ny < y_h:
                if maps[ny][nx] == 1 or maps[ny][nx] > d + 1:
                    maps[ny][nx] = d + 1
                    if nx == x_h - 1 and ny == y_h - 1:
                        return d + 1

                    queue.append((nx, ny, d + 1))

    return -1
์ •ํ™•์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (0.03ms, 10.1MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (0.02ms, 10.2MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (0.06ms, 10.3MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (0.04ms, 10.4MB)
ํ…Œ์ŠคํŠธ 5 ใ€‰	ํ†ต๊ณผ (0.03ms, 10.2MB)
ํ…Œ์ŠคํŠธ 6 ใ€‰	ํ†ต๊ณผ (0.07ms, 10.2MB)
ํ…Œ์ŠคํŠธ 7 ใ€‰	ํ†ต๊ณผ (0.10ms, 10.1MB)
ํ…Œ์ŠคํŠธ 8 ใ€‰	ํ†ต๊ณผ (0.06ms, 10.1MB)
ํ…Œ์ŠคํŠธ 9 ใ€‰	ํ†ต๊ณผ (0.05ms, 10.2MB)
ํ…Œ์ŠคํŠธ 10 ใ€‰	ํ†ต๊ณผ (0.06ms, 10.1MB)
ํ…Œ์ŠคํŠธ 11 ใ€‰	ํ†ต๊ณผ (0.03ms, 10.2MB)
ํ…Œ์ŠคํŠธ 12 ใ€‰	ํ†ต๊ณผ (0.02ms, 10.1MB)
ํ…Œ์ŠคํŠธ 13 ใ€‰	ํ†ต๊ณผ (0.06ms, 10.3MB)
ํ…Œ์ŠคํŠธ 14 ใ€‰	ํ†ต๊ณผ (0.04ms, 10.1MB)
ํ…Œ์ŠคํŠธ 15 ใ€‰	ํ†ต๊ณผ (0.03ms, 10.1MB)
ํ…Œ์ŠคํŠธ 16 ใ€‰	ํ†ต๊ณผ (0.02ms, 10.2MB)
ํ…Œ์ŠคํŠธ 17 ใ€‰	ํ†ต๊ณผ (0.07ms, 10.1MB)
ํ…Œ์ŠคํŠธ 18 ใ€‰	ํ†ต๊ณผ (0.02ms, 10.3MB)
ํ…Œ์ŠคํŠธ 19 ใ€‰	ํ†ต๊ณผ (0.01ms, 10.2MB)
ํ…Œ์ŠคํŠธ 20 ใ€‰	ํ†ต๊ณผ (0.01ms, 10.2MB)
ํ…Œ์ŠคํŠธ 21 ใ€‰	ํ†ต๊ณผ (0.01ms, 10.1MB)
ํšจ์œจ์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (13.07ms, 10.2MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (3.71ms, 10.4MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (8.80ms, 10.3MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (5.43ms, 10.2MB)

ํ ์—†์ด ํ‘ธ๋Š” ๋ฐฉ์‹๋„ ์žˆ๋Š”๋ฐ, ์ด๊ฒŒ ๋” ๋น ๋ฅด๋‹ค.

๋‹ค ์ฐพ์ง€ ์•Š๊ณ  ์ค‘๊ฐ„์— ๋Š์–ด์„œ ๊ทธ๋Ÿฐ๊ฑด๊ฐ€?

def solution(maps):
    answer = 0
    n = len(maps)-1
    m = len(maps[0])-1
    path = [(0,0)]
    food = [1]
    pos = 0
    try:
        while(True):
            i = path[pos][0]
            j = path[pos][1]

            if maps[i][j] == 1:
                if j<m:
                    if maps[i][j+1] == 1:
                        # ์˜ค๋ฅธ์ชฝ์— ๊ธธ์ด ์žˆ๋‹ค๋ฉด
                        path.append((i,j+1))
                        food.append(food[pos]+1)
                if i<n:
                    if maps[i+1][j] == 1:
                        # ์•„๋ž˜์ชฝ์— ๊ธธ์ด ์žˆ๋‹ค๋ฉด
                        path.append((i+1, j))
                        food.append(food[pos]+1)
                if j != 0:
                    if maps[i][j-1] == 1:
                        # ์™ผ์ชฝ์— ๊ธธ์ด ์žˆ๋‹ค๋ฉด
                        path.append((i,j-1))
                        food.append(food[pos]+1)
                if i != 0:
                    if maps[i-1][j] == 1 and i != 0:
                        path.append((i-1,j))
                        food.append(food[pos]+1)

            pos += 1
            maps[i][j] = 0
            if i == n and j == m:
                answer = food[path.index((n,m))]
                break

    except:
        answer = -1
    return answer
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (0.03ms, 10.1MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (0.02ms, 10.4MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (0.03ms, 10.1MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (0.03ms, 10.2MB)
ํ…Œ์ŠคํŠธ 5 ใ€‰	ํ†ต๊ณผ (0.03ms, 10.4MB)
ํ…Œ์ŠคํŠธ 6 ใ€‰	ํ†ต๊ณผ (0.04ms, 10.4MB)
ํ…Œ์ŠคํŠธ 7 ใ€‰	ํ†ต๊ณผ (0.05ms, 10.3MB)
ํ…Œ์ŠคํŠธ 8 ใ€‰	ํ†ต๊ณผ (0.03ms, 10.4MB)
ํ…Œ์ŠคํŠธ 9 ใ€‰	ํ†ต๊ณผ (0.05ms, 10.3MB)
ํ…Œ์ŠคํŠธ 10 ใ€‰	ํ†ต๊ณผ (0.06ms, 10.3MB)
ํ…Œ์ŠคํŠธ 11 ใ€‰	ํ†ต๊ณผ (0.03ms, 10.4MB)
ํ…Œ์ŠคํŠธ 12 ใ€‰	ํ†ต๊ณผ (0.02ms, 10.3MB)
ํ…Œ์ŠคํŠธ 13 ใ€‰	ํ†ต๊ณผ (0.04ms, 10.3MB)
ํ…Œ์ŠคํŠธ 14 ใ€‰	ํ†ต๊ณผ (0.02ms, 10.3MB)
ํ…Œ์ŠคํŠธ 15 ใ€‰	ํ†ต๊ณผ (0.02ms, 10.4MB)
ํ…Œ์ŠคํŠธ 16 ใ€‰	ํ†ต๊ณผ (0.02ms, 10.3MB)
ํ…Œ์ŠคํŠธ 17 ใ€‰	ํ†ต๊ณผ (0.05ms, 10.2MB)
ํ…Œ์ŠคํŠธ 18 ใ€‰	ํ†ต๊ณผ (0.01ms, 10.3MB)
ํ…Œ์ŠคํŠธ 19 ใ€‰	ํ†ต๊ณผ (0.01ms, 10.1MB)
ํ…Œ์ŠคํŠธ 20 ใ€‰	ํ†ต๊ณผ (0.01ms, 10.3MB)
ํ…Œ์ŠคํŠธ 21 ใ€‰	ํ†ต๊ณผ (0.01ms, 10.1MB)
ํšจ์œจ์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (11.73ms, 11.8MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (2.45ms, 10.3MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (6.00ms, 10.9MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (3.73ms, 10.6MB)

A* ์•Œ๊ณ ๋ฆฌ์ฆ˜๋„ ๋‚˜์˜จ๋‹ค

import heapq

def a_star(R,C,maps):
    # init
    check_list = [(1,0),(0,1),(-1,0),(0,-1)]
    path = [[100000]*C for r in range(R)]
    visited = [[0]*C for r in range(R)]
#     a star queue  guess, r, c
    queue = [(R+C-2,0,0)]

    path[0][0] = 0
    while(queue):
        guess,r,c = heapq.heappop(queue)
        visited[r][c] = 1

        for check in check_list:

            tmp_r = r+check[0]
            tmp_c = c+check[1]

            # ๊ฐ€์ƒ์ด
            if tmp_r<0 or tmp_r>=R or tmp_c <0 or tmp_c >= C:

                continue
            if visited[tmp_r][tmp_c] == 1:

                continue
            # ๋ฒฝ์ด๋ฉด ๋„˜์–ด๊ฐ
            if maps[tmp_r][tmp_c] == 0:

                continue
            if path[tmp_r][tmp_c] > path[r][c] + 1:

                path[tmp_r][tmp_c] = path[r][c]+1
                f = path[tmp_r][tmp_c] + R + C - tmp_r - tmp_c -2
                if tmp_r == R-1 and tmp_c == C-1:
                    return f+1
                heapq.heappush(queue,(f,tmp_r,tmp_c))
    return -1


def solution(maps):
    R = len(maps)
    C = len(maps[0])
    return a_star(R,C,maps)
์ •ํ™•์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (0.03ms, 10.3MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (0.02ms, 10.2MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (0.05ms, 10.2MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (0.04ms, 10.2MB)
ํ…Œ์ŠคํŠธ 5 ใ€‰	ํ†ต๊ณผ (0.04ms, 10.3MB)
ํ…Œ์ŠคํŠธ 6 ใ€‰	ํ†ต๊ณผ (0.05ms, 10.3MB)
ํ…Œ์ŠคํŠธ 7 ใ€‰	ํ†ต๊ณผ (0.08ms, 10.3MB)
ํ…Œ์ŠคํŠธ 8 ใ€‰	ํ†ต๊ณผ (0.05ms, 10.1MB)
ํ…Œ์ŠคํŠธ 9 ใ€‰	ํ†ต๊ณผ (0.11ms, 10.3MB)
ํ…Œ์ŠคํŠธ 10 ใ€‰	ํ†ต๊ณผ (0.09ms, 10.3MB)
ํ…Œ์ŠคํŠธ 11 ใ€‰	ํ†ต๊ณผ (0.04ms, 10.3MB)
ํ…Œ์ŠคํŠธ 12 ใ€‰	ํ†ต๊ณผ (0.05ms, 10.4MB)
ํ…Œ์ŠคํŠธ 13 ใ€‰	ํ†ต๊ณผ (0.05ms, 10.3MB)
ํ…Œ์ŠคํŠธ 14 ใ€‰	ํ†ต๊ณผ (0.05ms, 10.1MB)
ํ…Œ์ŠคํŠธ 15 ใ€‰	ํ†ต๊ณผ (0.06ms, 10.3MB)
ํ…Œ์ŠคํŠธ 16 ใ€‰	ํ†ต๊ณผ (0.02ms, 10.3MB)
ํ…Œ์ŠคํŠธ 17 ใ€‰	ํ†ต๊ณผ (0.08ms, 10.1MB)
ํ…Œ์ŠคํŠธ 18 ใ€‰	ํ†ต๊ณผ (0.03ms, 10.1MB)
ํ…Œ์ŠคํŠธ 19 ใ€‰	ํ†ต๊ณผ (0.01ms, 10.3MB)
ํ…Œ์ŠคํŠธ 20 ใ€‰	ํ†ต๊ณผ (0.01ms, 10.3MB)
ํ…Œ์ŠคํŠธ 21 ใ€‰	ํ†ต๊ณผ (0.02ms, 10.3MB)
ํšจ์œจ์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (17.79ms, 10.5MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (2.62ms, 10.3MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (5.78ms, 10.4MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (4.63ms, 10.5MB)

STACK์„ ์‚ฌ์šฉํ•œ ํ’€์ด๋„ ์žˆ๊ณ ...

 

๋‚ด ์ฝ”๋“œ์—์„œ ๋„์ค‘์— ๋„์ฐฉํ•˜๋ฉด ๋Š๊ธฐ ํ•˜๋‹ˆ๊นŒ ์ข€ ๋” ๋นจ๋ผ์ง€๊ธด ํ•˜์ง€๋งŒ... ์—ฌ์ „ํžˆ ๋Š๋ ค. ์™œ ๋Š๋ฆด๊นŒ? ๋ฐฐ์—ด์„ 2๊ฐœ ์‚ฌ์šฉํ•ด์„œ ๊ทธ๋Ÿฐ๊ฐ€?

  • ์ค‘๊ฐ„ ๋Š๊ธฐ ์ถ”๊ฐ€
  • ๊ฑฐ๋ฆฌ ์ž…๋ ฅํ•  ๋•Œ ์ขŒํ‘œ ์ฒดํฌ ์•ˆํ•˜๋„๋ก
  • ์ด๋ฏธ ๊ฐ’์ด ์žˆ๋Š”๋ฐ ์ ์€ ๊ฐ’์ด๋ฉด ์ฒดํฌ ์•ˆํ•˜๋„๋ก
  • ๋ฐฐ์—ด์€ 1๊ฐœ๋งŒ ์‚ฌ์šฉํ•˜๊ณ ...

์ด๋ ‡๊ฒŒ ๋ฐ”๊พธ๋‹ˆ๊นŒ ์†๋„๊ฐ€ 1/2 ์ •๋„ ๋œ๋‹ค.

from queue import PriorityQueue

def solution(maps):
    #if maps[0][0] == 0: #์ด์ œ ๋ณด๋‹ˆ ์ด ๋ถ€๋ถ„ ํ•„์š”์—†๋„ค?
    #    return -1    

    pq = PriorityQueue() #๊ทธ๋ƒฅ ํ๋ฅผ ์จ๋„ ๋˜๋Š” ๋“ฏ... ใ…ก.ใ…ก;
    
    dist = 1
    sx, sy = 0, 0
    ex, ey = len(maps[0]), len(maps)
    INF = 10001 #float์„ ์“ธ ํ•„์š”๊ฐ€ ์—†์Œ.
        #float("inf") #ํŒŒ์ด์ฌ 3.5 ์ด์ƒ์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
    
    for y in range(ey):
        for x in range(ex):
            if maps[y][x] != 0:
                maps[y][x] = INF
    
    pq.put([dist,(sx,sy)])
    while pq.empty() == False:
        t = pq.get()
        dist = t[0]
        x = t[1][0]
        y = t[1][1]
        
        if y == ey-1 and x == ex-1:
            return dist

        if dist < maps[y][x]:
            maps[y][x] = dist
            dist += 1
            if sx < x and dist < maps[y][x-1]:
                pq.put([dist,(x-1,y)])
            if x < ex-1 and dist < maps[y][x+1]:
                pq.put([dist,(x+1,y)])
            if sy < y and dist < maps[y-1][x]:
                pq.put([dist,(x,y-1)])
            if y < ey-1 and dist < maps[y+1][x]:
                pq.put([dist,(x,y+1)])

    return -1
์ •ํ™•์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (0.10ms, 10.4MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (0.06ms, 10.4MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (0.13ms, 10.5MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (0.09ms, 10.3MB)
ํ…Œ์ŠคํŠธ 5 ใ€‰	ํ†ต๊ณผ (0.20ms, 10.4MB)
ํ…Œ์ŠคํŠธ 6 ใ€‰	ํ†ต๊ณผ (0.27ms, 10.4MB)
ํ…Œ์ŠคํŠธ 7 ใ€‰	ํ†ต๊ณผ (0.23ms, 10.3MB)
ํ…Œ์ŠคํŠธ 8 ใ€‰	ํ†ต๊ณผ (0.13ms, 10.3MB)
ํ…Œ์ŠคํŠธ 9 ใ€‰	ํ†ต๊ณผ (0.20ms, 10.3MB)
ํ…Œ์ŠคํŠธ 10 ใ€‰	ํ†ต๊ณผ (0.21ms, 10.4MB)
ํ…Œ์ŠคํŠธ 11 ใ€‰	ํ†ต๊ณผ (0.10ms, 10.4MB)
ํ…Œ์ŠคํŠธ 12 ใ€‰	ํ†ต๊ณผ (0.08ms, 10.3MB)
ํ…Œ์ŠคํŠธ 13 ใ€‰	ํ†ต๊ณผ (0.12ms, 10.4MB)
ํ…Œ์ŠคํŠธ 14 ใ€‰	ํ†ต๊ณผ (0.11ms, 10.3MB)
ํ…Œ์ŠคํŠธ 15 ใ€‰	ํ†ต๊ณผ (0.11ms, 10.4MB)
ํ…Œ์ŠคํŠธ 16 ใ€‰	ํ†ต๊ณผ (0.06ms, 10.3MB)
ํ…Œ์ŠคํŠธ 17 ใ€‰	ํ†ต๊ณผ (0.17ms, 10.3MB)
ํ…Œ์ŠคํŠธ 18 ใ€‰	ํ†ต๊ณผ (0.08ms, 10.3MB)
ํ…Œ์ŠคํŠธ 19 ใ€‰	ํ†ต๊ณผ (0.06ms, 10.1MB)
ํ…Œ์ŠคํŠธ 20 ใ€‰	ํ†ต๊ณผ (0.03ms, 10.3MB)
ํ…Œ์ŠคํŠธ 21 ใ€‰	ํ†ต๊ณผ (0.04ms, 10.3MB)
ํšจ์œจ์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (84.16ms, 10.6MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (14.37ms, 10.5MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (39.36ms, 10.6MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (22.83ms, 10.4MB)

 

728x90
๋ฐ˜์‘ํ˜•