1. 그래프 각 점을 Vertex 또는 node라고 부르고 점들을 연결하는 간선을 edge라고 부르는 구조이다. 방향성으로 분류하면 무방향(양방향) 그래프와 방향 그래프로 분류 할 수 있다. 한 곳이라도 순환하는 지점이 있으면 순환 그래프, 없으면 비순환 그래프이다. DAG(Directed Acyclic Graph)라는 것도 있는데 순환하지 않으면서 방향성이 정해져있는 그래프이다. 2. 트리 (순환성이 없는 무방향 그래프 어떤 노드도 루트 노드가 될 수 있다. (어디서 시작을 하든 다른 모든 노드로 갈 수 있음.) 가장 바깥쪽 노드는 리프 노드. A 노드에서 B 노드로 가는 경로가 반드시 존재하며 유일하다. 노드 개수 = 간선 개수 + 1) 위의 설명은 수학적인 개념이고 코딩쪽에서는 보통 부모 자식 관계..
전체 글
https://www.acmicpc.net/problem/1449 1449번: 수리공 항승 첫째 줄에 물이 새는 곳의 개수 N과 테이프의 길이 L이 주어진다. 둘째 줄에는 물이 새는 곳의 위치가 주어진다. N과 L은 1,000보다 작거나 같은 자연수이고, 물이 새는 곳의 위치는 1,000보다 작거나 www.acmicpc.net #물이 새는 곳 개수 N, 테이프의 길이 L N, L = map(int, input().split()) #0~1000까지 이므로 1001개 좌표 False설정 coordi = [False] * 1001 #물이 새는 곳의 좌표 입력받기 for i in map(int, input().split()): coordi[i] = True #확인할 좌표 포인터 x, 필요한 테이프 개수 cnt ..
11047번: 동전 0 (acmicpc.net) 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net 조건에 보면 동전의 가치는 배수 관계라고 되어있다. 배수 관계이면 그리디 알고리즘으로 풀 수 있다. # 한 줄에 입력 여러개 받아서 변수에 할당하기 N, K = map(int, input().split()) coins = [int(input()) for i in range(N)] coins.reverse() totalCoins = 0 for coin i..
9명의 난쟁이 중에서 7명을 뽑아야 하니까 조합을 사용해야 한다. 조합은 combianations 모듈을 가져다 쓰면 된다. from itertools import combinations heights = [int(input()) for i in range(9)] for candis in combinations(heights, 7): if sum(candis) == 100: for real_dwarfs in sorted(candis): print(real_dwarfs) break 9개의 입력을 받아서 heights에 넣은 다음 heights 리스트에서 7개를 선택해서 candis에 넣는다. candis의 합이 100일 때만 리스트의 각각의 원소를 출력해주면 되는데, 오름차순으로 출력하라고 했으니 cand..
책 이름 : 팔린 권수 => key : value 로 매칭할 수 있기 때문에 딕셔너리 구조를 이용한다. d = dict() for i in range(int(input())): book = input() if book in d: d[book] += 1 else: d[book] = 1 # print(d.keys()) # print(d.values()) # print(d.items()) m = max(d.values()) candi = [] for k, v in d.items(): if v == m: candi.append(k) candi.sort() print(candi[0]) 딕셔너리 구조는 .keys()를 통해 키만 뽑아낼 수 있고 .values()를 통해 values만 뽑아낼 수도 있고 .items(..
깃헙 주소: https://github.com/purewater02/SpringBoot_JPA_Blog_Prj GitHub - purewater02/SpringBoot_JPA_Blog_Prj: 1st Boot Prj 1st Boot Prj. Contribute to purewater02/SpringBoot_JPA_Blog_Prj development by creating an account on GitHub. github.com Spring Boot와 JPA, MySQL을 사용해 만들어 본 블로그 입니다. 두 번째 프로젝트와 다르게 Spring Boot로 OAuth2 카카오 로그인을 구현했습니다. MyBatis처럼 직접 쿼리문을 작성하지 않고 JPA와 MySQL을 사용해 ORM 형태로 DB를 구현했습니다..
깃헙 주소: purewater02/spring-final-prj: spring final project - jeju trip (github.com) GitHub - purewater02/spring-final-prj: spring final project - jeju trip spring final project - jeju trip. Contribute to purewater02/spring-final-prj development by creating an account on GitHub. github.com Springframework와 mybatis를 배우고 만들어 본 첫번째 프로젝트입니다. 이 프로젝트를 진행할 당시 시간이 촉박하여 계획했던 대로 완성은 하지 못했습니다. 그래도 프로젝트를 진행하면..
깃헙 주소 : purewater02/JSP_Shop: 첫번째 JSP 쇼핑몰 프로젝트 (github.com) GitHub - purewater02/JSP_Shop: 첫번째 JSP 쇼핑몰 프로젝트 첫번째 JSP 쇼핑몰 프로젝트. Contribute to purewater02/JSP_Shop development by creating an account on GitHub. github.com 스프링을 활용하지 않았고 자바 컨트롤러로 back을 JSP로 front를 구현 했습니다. Front의 디자인은 HTML, CSS, JS, JQuery를 이용했습니다. 프로젝트 내에서 특히 제가 더 중점적으로 담당한 부분만 정리하였습니다. 간단한 시연 gif 1. 메인 페이지 메인 네비게이션 바는 슬라이드시 hide 되도록..