
새로 데이터베이스를 생성하고 테이블을 만드는 경우도 있지만, 실제로는 이미 데이터베이스에 데이터나 구조가 있는 경우가 더 많다. 이럴 경우 models.py에 일일이 모델들을 잡지 않아도 inspectdb 기능을 사용하여 settings.py에 연결되어 있는 DB의 내용을 가져올 수 있다. 그러면 아래의 방법을 따라해보자. 1. 현재 프로젝트의 경로 복사하기 프로젝트 우클릭 - Properties 2. anaconda prompt 실행하고 다음의 명령어 수행 cd 복사한 프로젝트 경로 3. 다음의 명령어 수행 python manage.py inspectdb 특정 이름을 갖는 새로운 파일로 생성하고 싶다면 다음의 명령어 수행 python manage.py inspectdb > abc.py(원하는 파일명)
dfs는 깊이 우선 탐색으로 자식노드부터 탐색하는 기법이고, bfs는 넓이 우선 탐색으로 형제노드들부터 탐색하는 기법이다. dfs를 구현하는 방법으로는 스택을 사용하는 방법과 재귀를 사용하는 방법이 있고, bfs를 구현하는 방법은 큐 혹은 데크를 사용하는 방법이 있다. dfs를 구현할 때에는 이미 방문한 노드 정보를 저장하는 visit과 앞으로 찾아가야할 노드를 기준으로 데이터를 탐색한다. 이미 방문을 했다면 무시하고, 방문하지 않았다면 탐색한다. 그럼 우선 dfs 구현 방법을 살펴보자. 1. 스택 활용 방법 def dfs(graph, start_node): visit = [] stack = [] stack.append(start_node) while stack: node = stack.pop() if ..
https://www.acmicpc.net/problem/9184 9184번: 신나는 함수 실행 입력은 세 정수 a, b, c로 이루어져 있으며, 한 줄에 하나씩 주어진다. 입력의 마지막은 -1 -1 -1로 나타내며, 세 정수가 모두 -1인 경우는 입력의 마지막을 제외하면 없다. www.acmicpc.net 이 문제는 동적 계획법 문제이다. 내 풀이 import sys d_abc = [[[0]*21 for i in range(21)] for i in range(21)] def w(a,b,c): if a 20: if d_abc[20][20][20] ==0: d_abc[20][20][20] = w(20,20,20) return d_abc[20][20][20] if a < b and b < c: if d_ab..
https://www.acmicpc.net/problem/10816 10816번: 숫자 카드 2 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 내 풀이 import sys n=int(sys.stdin.readline()) arr_n = list(map(int,sys.stdin.readline().split())) m=int(sys.stdin.readline()) #이 알고리즘은 arr_n을 차례로 순회하여 arr_m에 있는지 체크하는 알고리즘이다. #출력 시 처음 인덱스들의 순서 알기 위해 tmp로 받고..
https://www.acmicpc.net/problem/11047 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 내 풀이 - 1 import sys n,k = map(int,sys.stdin.readline().split()) coin = [] for i in range(n): coin.append(int(sys.stdin.readline())) len = n count= 0 coin.sort(reverse=True) #print(coin) f..
https://www.acmicpc.net/problem/1541 1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 www.acmicpc.net 내 풀이 from collections import deque line = input().split('-') res = 0 for i in range(len(line)): lst = list(map(int,str(line[i]).split('+'))) if i==0: res+=sum(lst) else: res-=sum(lst) print(res) 식의 최소값은, - 다음에 오는 식이 괄호로 ..
https://www.acmicpc.net/problem/14889 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net 내 풀이 - 주석 from itertools import combinations,permutations import sys n = int(sys.stdin.readline()) arr = [] for i in range(n): arr.append(list(map(int,sys.stdin.readline().split()))) #조합으로 6명이면 3명씩, 4명이면 2명씩 뽑기 combi =list(combinations..
- Total
- Today
- Yesterday
- brute force
- R
- 프로그래머스
- web
- Java
- python
- bootstrap
- 덱
- 스프링
- 장고
- 문자열
- jsp
- html
- Oracle
- 단계별로풀어보기
- 큐
- 고득점 키트
- 자바
- 자바스크립트
- Case When
- CSS
- 백준
- javascript
- Django
- 정렬
- append
- 브루트 포스
- 파이썬
- jQuery
- baekjoon
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |