본문 바로가기

분류 전체보기443

[Graph] 그래프의 정의 및 Python 구현방법 1) 그래프의 정의 위 그림처럼 도시와 도시 사이를 연결하는 도로나 컴퓨터 네트워크 또는 사람의 인맥 관계처럼 어떤 관계(relationships)를 표현하는 수학 구조를 그래프라고 한다. 도시, 컴퓨터, 사람 등을 노드(node 또는 vertex)라 하고, 이들을 연결하는 도로, 네트워크, 인맥 등을 간선(edges)이라 한다. (많은 자료에서 노드 대신 정점(vertex)이라는 용어를 사용한다.) 그래프는 '노드의 집합'과 '간선의 집합'으로 구성된다. 이것을 수학으로 표현하면 위와 같다. 예를 들어 아래 그림과 같은 그래프를 G=(V,E)라고 하면, V와 E는 위와 같다. 2) 그래프의 종류 그래프의 종류가 매우 많지만, 우리는 간단하게 세 종류만 공부한다. 그리고, 어떤 노드가 다시 자신과 연결되.. 2023. 9. 29.
[프로그래머스 Lv.3] 단어 변환 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr from collections import deque def solution(begin, target, words): if target not in words: # words 안에 없다면 0 반환 return 0 def canExchange(arr_a,arr_b): # 바꿀 수 있는 알파벳인지 확인 diff = 0 for i in range(len(arr_a)): if arr_a[i] != arr_b[i]: diff += 1 if diff == 1: return True else: return False de.. 2023. 9. 29.
[프로그래머스 Lv.1] 체육복 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(n, lost, reserve): # 2 2023. 9. 29.
[프로그래머스 Lv.1] 모의고사 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(answers): answer = [] def method_1(answers): inputs = [1,2,3,4,5]*(10000//5 + 1) result = [1 for i,value in enumerate(answers) if answers[i] == inputs[i]] return sum(result) def method_2(answers): inputs = [2,1,2,3,2,4,2,5]*(10000//8 + 1) result = [1 for i,value in enumerat.. 2023. 9. 29.
[백준 17392번] 우울한 방학 17392번: 우울한 방학 1일, 5일, 8일에 약속을 순서대로 배치하면, 4일과 10일에 각각 1만큼의 우울함을 느끼게 되어, 총 2만큼의 우울함을 느끼게 된다. 이보다 덜 우울함을 느끼게 만드는 방법은 존재하지 않는다. www.acmicpc.net n, m = map(int,input().split()) h = list(map(int,input().split())) def getUnhappy(num): total = 0 for i in range(1,num+1): total += i**2 return total happy = sum(h) + len(h) unhappy = m - happy area = [0] * (n+1) index = 0 for i in range(unhappy): area[inde.. 2023. 9. 29.
[백준 1469번] 숌 사이 수열 1469번: 숌 사이 수열 첫째 줄에 X의 크기 N이 주어진다. 둘째 줄에 X에 들어가는 수가 빈칸을 사이에 두고 주어진다. X의 크기는 8보다 작거나 같은 자연수이다. X의 원소는 0보다 크거나 같고 16보다 작거나 같은 정수 www.acmicpc.net import sys sys.setrecursionlimit(10**7) n = int(input()) # X의 크기는 8보다 작거나 같은 자연수 # X의 원소는 0보다 크거나 같고 16보다 작거나 같은 정수이다. # 사전 순으로 가장 빠른 것 x = sorted(list(map(int,input().split()))) s = [-1 for _ in range(n*2)] visited = [False for _ in range(17)] def dfs(i.. 2023. 9. 29.