본문 바로가기

프로그래밍

[백준 1707 이분 그래프] - 파이썬 풀이 🦄 백준 1707 이분 그래프 - 파이썬 풀이 🦄 문제 Keypoints Solution References 백준 1707 이분 그래프 - 파이썬 풀이 🦄 문제 2-Coloring을 하는 문제이다. Keypoints 한 점에서 Color A로 시작해서 이웃한 노드는 다른 색깔을 칠하면 된다. 주의사항 : 모든 노드가 연결되지 않을 수 있으므로, 모든 점에서 시작해봐야 한다. Solution import sys def canBisect(graph, graph_linear, n): colors = [0 for i in range(n)] for v in range(n): #모든 점에서 확인 if colors[v]==0: queue = [v] colors[v] = 1 while queue: v = queue.pop.. 더보기
[백준 1922 네트워크 연결] - 파이썬 풀이 🦄 백준 1922 네트워크 연결 - 파이썬 풀이 🦄 문제 Keypoints Solution References 백준 1922 네트워크 연결 - 파이썬 풀이 🦄 문제 Minimal Spanning Tree를 구하는 문제이다. Keypoints minimal한 edge부터 선택하면서 cycle을 만드는 경우를 제외하면 된다. 두 꼭지점의 집합이 서로 같다면 합쳤을 때 Cycle을 만든다. Solution import sys n = int(input()) e = int(input()) graph = [list(map(int, sys.stdin.readline().strip().split())) for i in range(e)] graph.sort(key=lambda x:x[2]) sets = [i for i in.. 더보기
백준 10026 적록색약] 파이썬 풀이 🦄 [백준 10026 적록색약] 파이썬 풀이 🦄 문제 Keypoints Solution References [백준 10026 적록색약] 파이썬 풀이 🦄 문제 동일한 값에 대해서 bfs/dfs를 통하여 탐색하는 기본 문제 Keypoints 두 가지 버전에 대해서 탐색해야 하므로, board 를 Copy한다. Solution dx = [0,0,1,-1] dy = [1,-1,0,0] def bfs3(board, x,y): color = board[y][x] board[y][x]=0 queue = [(x,y)] while queue: x,y = queue.pop(0) for i in range(4): nx, ny = x+dx[i], y+dy[i] if 0 더보기
[프로그래머스 땅따먹기] 파이썬 풀이 🦄 [프로그래머스 땅따먹기] 파이썬 풀이 문제 Keypoints Solution References [프로그래머스 땅따먹기] 파이썬 풀이 🦄 문제 행을 위에서 아래로 지나면서 최대값을 구하는 DP문제 Keypoints DP[4] 리스트에 보관해야 하는 값은, 해당 땅을 밟았을 때의 최대값이다. 따라서 현재땅에서 이전 땅들(같은 열 제외)의 최대값을 더해주면 된다. Solution def solution(land): dp = land[0] for i in range(1, len(land)) : temp = sorted([(j,i) for i,j in enumerate(dp)], key=lambda x:-x[0]) for j in range(4): for k in range(4): if temp[k][1] !=.. 더보기
Tensorboard not found error Try python -m tensorboard.main --logdir=. 더보기
[프로그래머스 H-index] 파이썬 풀이 [프로그래머스 H-index] 파이썬 풀이 문제 Keypoints Solution References [프로그래머스 H-index] 파이썬 풀이 문제 논문의 H index를 구하는 문제이다. 논문을 자주 읽어서 풀어본 문제. Keypoints H-index는 인용수가 h개 이상인 논문이 h일 때, 최대의 h값이다. 리스트의 갯수가 N개라면, H-index는 N보다 작거나 같다. Solution def solution(citations): citations.sort(reverse=True) # cit : 6 5 3 1 0 # idx : 1 2 3 4 5 answer = min(len(citations), min(citations)) # case{3} -> H-index=1 for idx, citation .. 더보기
[프로그래머스 스킬트리] 파이썬 풀이 [프로그래머스 스킬트리] 파이썬 풀이 문제 Keypoints Solution References [프로그래머스 스킬트리] 파이썬 풀이 문제 주어진 순서를 만족하는지 여부를 확인하는 문제 Keypoints regular expression으로 비교해야 하는 텍스트만 가져온다. "ABEDC" 에서 "CE"가 주어진 스킬이면, 'E', 'C' 가 뽑힌다. Solution import re def solution(skill, skill_trees): answer = 0 for s in skill_trees: order = re.findall(f"[{skill}]", s) # collect "CBD" from skill / e.g."ACEB" --> ["C", "B"] index = .. 더보기
Study plan 1 보호되어 있는 글입니다. 더보기