알고리즘 119

[백준] 11403번 (python 파이썬)(플로이드 와샬)

n = int(input()) grp = [[0 for col in range(n)] for row in range(n)] for i in range(n): for j, v in enumerate(map(int, input().split())): grp[i][j] = v for k in range(n): for i in range(n): for j in range(n): if grp[i][k] and grp[k][j]: grp[i][j] = 1 for i in range(n): for j in range(n): print(grp[i][j], end=" ") print() 다른 블로그들을 참고했습니다 이 문제는 '플로이드 와샬' 알고리즘을 사용합니다 플로이드 와샬에 대해 잘 와닿는 표현이 모든 '거쳐가는 ..

알고리즘 2022.07.31

[백준] 9375번 (python 파이썬)

from collections import Counter t = int(input()) for _ in range(t): n = int(input()) arr = [] for i in range(n): a, b = input().split() arr.append(b) res = Counter(arr) num = 1 for k in res: # res = { headgear : 2 , eyewear : 1 } , { face : 3 } num *= res[k] + 1 print(num - 1) 첫번째 경우의 규칙을 살펴 보면 (hat, sunglasses) (turban, sunglasses) (hat) (turban) (sunglasses) 5가지 headgear : 2 eyewear : 1 하나씩만 입..

알고리즘 2022.07.03