분류 전체보기
![케빈 베이컨의 6단계 법칙](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdpBKok%2Fbtrp6IgHQ9a%2F7sw2DK5c9o7MqYvtyK05K0%2Fimg.png)
케빈 베이컨의 6단계 법칙
def BOJ1389() : n, m = map(int, input().split()) temp = [[1e9] * n for _ in range(n)] for _ in range(m) : start, end = map(int, input().split()) temp[start-1][end-1] = 1 temp[end-1][start-1] = 1 for mid in range(n) : for start in range(n) : for end in range(n) : if mid != end and temp[start][mid] and temp[mid][end]: temp[start][end] = min(temp[start][end], temp[start][mid] + temp[mid][end]) resu..
![가장 큰 증가 부분 수열[백준 11055] - python](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6MaXi%2Fbtrpu09TOQ8%2FjVGwf2vtKvgzs173Y18rCk%2Fimg.png)
가장 큰 증가 부분 수열[백준 11055] - python
import sys input = sys.stdin.readline def BOJ11055() : N = int(input()) array = list(map(int, input().split())) memo = list(array) for index in range(1, len(array)) : max_point = 0 for j in range(index) : if array[j] < array[index] and max_point < memo[j] + array[index] : max_point = memo[j] + array[index] memo[index] = max(memo[index], max_point) print(max(memo)) BOJ11055() 접근 방법 0. 다이나믹 프로그래밍 ..
![LCS [백준 9251] - python](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUEyVE%2FbtrqbFDuLVE%2FzVSihW8kw1M7jkk0iRScpK%2Fimg.png)
LCS [백준 9251] - python
def BOJ9251() : first = input() second = input() array = [[0] * (len(second) + 1) for _ in range(len(first) + 1)] for i in range(1, len(first) + 1) : for j in range(1, len(second) + 1) : if first[i-1] == second[j-1] : array[i][j] = array[i-1][j-1] + 1 else : array[i][j] = max(array[i-1][j], array[i][j-1]) print(array[len(first)][len(second)]) BOJ9251() 접근방법 : 1. 이차원 배열로 접근 2. 비교하는 문자열이 같다면 대각선에서..
![파도반 수열[백준 9461] - python](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdmNyAj%2FbtrpkvPDP29%2F3WISxVawRJR6B3k9w5h2D1%2Fimg.png)
파도반 수열[백준 9461] - python
import sys input = sys.stdin.readline def BOJ9461() : T = int(input()) dp = [0] * 102 dp[0] = 1 dp[1] = 1 dp[2] = 1 for i in range(3, 102) : dp[i] = dp[i-3] + dp[i-2] for _ in range(T) : n = int(input()) print(dp[n-1]) BOJ9461() 접근방법 1. 점화식만 찾아내면 문제는 끝난다.(dp 문제들의 핵심인것 같다) 2. 문제에서 다행히 예시를 잘 보여주어서 점화식 찾기가 어렵지 않았다. https://www.acmicpc.net/problem/9461 9461번: 파도반 수열 오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫..
![01타일 [백준 1904] - python](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FuBi98%2FbtrppzjrFJO%2Fkk1iLeKWzAWpy4Dl54jOL1%2Fimg.png)
01타일 [백준 1904] - python
정답코드 import sys input = sys.stdin.readline def BOJ1904() : dp = [0] * 1000001 dp[0] = 0 dp[1] = 1 dp[2] = 2 dp[3] = 3 dp[4] = 5 n = int(input()) for i in range(5, n+1) : dp[i] = (dp[i-2] + dp[i-1]) % 15746 print(dp[n]) BOJ1904() 접근 방법 1. 점화식만 떠올리면 끝이다. 2. 나머지 연산을 까먹지 않고 적용하자! https://www.acmicpc.net/problem/1904 1904번: 01타일 지원이에게 2진 수열을 가르쳐 주기 위해, 지원이 아버지는 그에게 타일들을 선물해주셨다. 그리고 이 각각의 타일들은 0 또는 1이..
![파이프 옮기기 1 [백준 17070] - python](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdIxAzG%2FbtrpGzcdEJc%2FrC3H2bcfWMBCGngxzutvpk%2Fimg.png)
파이프 옮기기 1 [백준 17070] - python
import sys input = sys.stdin.readline def BOJ17070() : N = int(input()) graph = [] for _ in range(N) : graph.append(list(map(int, input().split()))) answer = [[[0] * N for _ in range(N)] for _ in range(N)] answer[0][0][1] = 1 for x in range(0, N) : for y in range(2, N) : # 가로, 세로 if graph[x][y] == 0 : answer[0][x][y] = answer[0][x][y-1] + answer[2][x][y-1] answer[1][x][y] = answer[1][x-1][y] + a..
![오늘처럼 내가 싫었던 날은 없다](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fy04NB%2FbtrpdnXUqzN%2FkBsDwiFRTjnVs7rfJcTwr1%2Fimg.jpg)
오늘처럼 내가 싫었던 날은 없다
부제: 무너진 자존감을 일으켜줄 글배우의 마음 수업 요새 다시 자기계발서가 끌려서 지하철 && 잠시 머리 식히고 싶을때 읽고 있다. 마음에 와닿는 구절들이 많이 있어 그걸 글로 남기고 있다 그런 말들을 많이 접했었다. '당연한 이야기들을 그럴듯 하게 적어놓은 책이 자기계발서' 라고 이 당연한 말들을 활자로서 접하게 되면 마음속에 파도가 생긴다. 그 파도가 내겐 동기부여가 되고 있어서 정기적으로 읽어줘야 한다 ㅎㅎ 이 책은 짧은 줄 글로 되어있어 책의 두께에 비해 속도감 있게 읽힌다. 하지만 그 짧은 글 들이 주는 여파는 결코 가볍지 않다. 스스로에게 의구심, 상처가 많아질때마다 나를 보듬어 줄수 있는 책이다. - 내가 아무리 잘하려고 해도 나도 사람이기에 잘할 수 없을 때도 있고 내가 아무리 잘해도 상대..
![가장 긴 증가하는 부분 수열 5[백준 14003] - python](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoRpFn%2FbtrpwQfeGWN%2F4rg12VJIBK1aPJpb9EdQG0%2Fimg.png)
가장 긴 증가하는 부분 수열 5[백준 14003] - python
접근 방법 : https://dkrnfls.tistory.com/114 가장 긴 증가하는 부분 수열 4 [백준 14002] - python import sys from bisect import bisect_left input = sys.stdin.readline def BOJ14002(): N = int(input()) A = list(map(int, input().split())) dist = [-1000000001] index = [0] * (N + 1) for i in range(l.. dkrnfls.tistory.com 이 문제에서의 접근방법과 같다!! 장애물 이였던 것 : 0. 값의 범위를 살펴보자 -10억 부터 10억 까지이다. 1. 거리 배열의 맨처음 초기값을 0으로 넣어주면 안된다. -10..
![연구소[백준14502] - python](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyGVmb%2FbtroStsg4dg%2F24ZXrtEnxsaC08rw0JU3M0%2Fimg.png)
연구소[백준14502] - python
정답 코드 import sys import copy from collections import deque from itertools import combinations input = sys.stdin.readline directions = [[1,0], [-1,0], [0,1], [0,-1]] def bfsAndCountZero(array, viruses) : height = len(array) width = len(array[0]) visited = [[0] * width for _ in range(height)] zero_count = 0 queue = deque() for virus in viruses : queue.append(virus) while queue : curr_x, curr_y = q..