PYTHON JAVA SCRIPT 변수 선언 없음 var name; 줄바꿈 '\n' " "를 string 안에 넣는다 비교 == ===(엄밀히 같다) != !==(엄밀히 다르다) 조건 if 조건 : elif 조건 : if (조건) { } else if (조건) { } and && or || 출력문 print( ) document.write( ) 반복문 while 조건 : 반복 내용 while( 조건 ) { } for i in range( ) : for(var i =0; i{return a-b}) //a > b 를 기준으로 정렬(오름차순) 역순 정렬 .reverse() .reverse() 배열 슬라이싱 arry[a:b] arry.slice(a, b) 배열 요소의 합 sum(arry) for문으로 전체 검색..

문제 문제 상황 - 선택에 일종의 무게(가격)이 존재한다. - 선택지가 여러가지이고 선택마다 대소가 바뀌어 최선의 선택을 해야한다. 해결 전략 - DP를 이용해 해결하는데 가격이 최대가 아니라 최소이므로 min을 이용하여 해결한다. 코드 1 2 3 4 5 6 7 8 9 10 n = int(input()) RGB = [[] for _ in range(n+1)] for i in range(1,n+1): r,g,b = map(int, input().split()) RGB[i] = [r,g,b] for i in range(2, n+1): RGB[i][0] = min(RGB[i-1][1], RGB[i-1][2]) + RGB[i][0] # red RGB[i][1] = min(RGB[i-1][0], RGB[i-1][..

문제 문제 상황 - 더하는 순서에 따라 같은 숫자의 조합이여도 다르게 인식된다. - itertools 의 permutation을 하기엔 케이스가 너무 커진다. 해결 전략 - 피보나치의 점화식이 되므로 동적프로그래밍을 이용해 Bottom - up으로 해결한다. 코드 1 2 3 4 5 6 7 8 9 10 11 t = int(input()) # testcase tc = [] def p123(n): dp = [0,1,2,4] for i in range(4,n+1): dp.append(dp[i-1]+dp[i-2]+dp[i-3]) return dp[n] for _ in range(t): tc.append(int(input())) for i in range(t): print(p123(tc[i])) cs 해설 새로 학..

동적 계획법의 첫번째 예제로 조건은 세가지이다. 문제 상황 - 경우의 수가 여러가지이고 그 중 최소가 되는 경우가 무엇인지 찾을 수가 없다. - 모든 경우의 수를 무조건 검색하기에는 연산이 너무 많다. 해결 전략 - 동적계획법을 써야한다는 사실은 알지만 적용 방법이 어려웠다. - 검색을 통해 여러가지 코드를 참고하였고 그 중 Bottom-up 방식을 사용하는 것이 그나마 이해가 되었다. 코드 1 2 3 4 5 6 7 8 9 n = int(input()) # 숫자 입력 dp = [0,0,1,1] # 0과 1은 0번으로, 2와 3은 1번의 연산으로 1 가능 for i in range(4, n+1): dp.append(dp[i-1]+1) if i%2 ==0 : dp[i] = min(dp[i], dp[(i//2..
- Total
- Today
- Yesterday
- Distinct#Codility#Python
- 반복수열#백준알고리즘#Python
- 리모컨#완전탐색#BOJ#Python
- 미로 탐색#백준알고리즘#Python
- 병든 나이트#BOJ#탐욕법#Python
- PassingCars#Codility#Python
- 터틀비치#리콘#xbox#controller
- 나무자르기#BOJ#이분탐색#Python
- 공유기 설치#BOJ#이분탐색#Python
- N으로 표현#DP#Programmers#Python
- 백준 알고리즘#BackTracking
- 날짜 계산#BOJ#완전탐색#Python
- 순열사이클#BOJ#Python
- 쿼드트리#BOJ#분할정복#Python
- django
- NumberofDiscIntersections#Codility#Sort#Python
- 파이썬알고리즘인터뷰#4장
- API#lazy#
- 암호코드#dp#BOJ#Python
- Triangle#Sorting#Codility#Python
- filter#isalnum#lower
- 배열합치기#분할정복#BOJ#Python
- 텀 프로젝트#백준알고리즘#Python
- Swift#Tuples#Range
- django#slicing
- Brackets#Stacks and Queues#Codility#Python
- 토마토#백준알고리즘#Python
- 랜선자르기#이분탐색#BOJ#Python
- 종이자르기#분할정복#BOJ#Python
- 섬의개수#백준알고리즘#Python
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |