[프로그래머스] <배달> 파이썬
programmers.co.kr/learn/courses/30/lessons/12978 코딩테스트 연습 - 배달 5 [[1,2,1],[2,3,3],[5,2,2],[1,4,2],[5,3,1],[5,4,2]] 3 4 6 [[1,2,1],[1,3,2],[2,3,2],[3,4,3],[3,5,2],[3,5,3],[5,6,1]] 4 4 programmers.co.kr def solution(N, road, K): answer = 1 arr = [[500000] * (N+1) for _ in range(N+1)] for i in road : arr[i[0]][i[1]], arr[i[1]][i[0]] = min(arr[i[0]][i[1]],i[2]), min(arr[i[1]][i[0]],i[2]) for i in ra..
[프로그래머스] <방의 개수> 파이썬
programmers.co.kr/learn/courses/30/lessons/49190# 코딩테스트 연습 - 방의 개수 [6, 6, 6, 4, 4, 4, 2, 2, 2, 0, 0, 0, 1, 6, 5, 5, 3, 6, 0] 3 programmers.co.kr def solution(arrows): move = [(-1,0),(-1,1),(0,1),(1,1),(1,0),(1,-1),(0,-1),(-1,-1)] edge = [] vertex = [(0,0)] current = (0,0) room = 0 for i in arrows : current = vertex[-1] a,b = current[0] + move[i][0], current[1] + move[i][1] if (a,b) in vertex : i..
[프로그래머스] <순위> 파이썬
programmers.co.kr/learn/courses/30/lessons/49191 코딩테스트 연습 - 순위 5 [[4, 3], [4, 2], [3, 2], [1, 2], [2, 5]] 2 programmers.co.kr def solution(n, results): arr = [[False] * (n+1) for _ in range(n+1)] for i, j in results : arr[i][j] = True for i in range(1,n+1) : for j in range(1, n+1) : if i == j : continue else : if arr[i][j] == True : for k in range(1,n+1) : if k == i : continue if arr[j][k] == Tr..
[프로그래머스] <행렬의 곱셈> 파이썬
programmers.co.kr/learn/courses/30/lessons/12949 코딩테스트 연습 - 행렬의 곱셈 [[2, 3, 2], [4, 2, 4], [3, 1, 4]] [[5, 4, 3], [2, 4, 1], [3, 1, 1]] [[22, 22, 11], [36, 28, 18], [29, 20, 14]] programmers.co.kr import numpy as np def solution(arr1, arr2): a = arr1 b = np.array(arr2).reshape(len(arr2), len(arr2[0])).transpose().tolist() answer = [[0] * len(b) for _ in range(len(a))] for i in range(len(a)) : for..