일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- django
- boj15683
- boj15954
- onTouch
- boj2239
- Spring
- boj10775
- boj15998
- mysql
- testdb
- boj7579
- bruteforce
- boj_15684
- TDD
- DP
- DFS
- onTouchListner
- boj10942
- springboot
- react
- DynamicProgramming
- backtracking
- BOJ
- boj_15685
- boj15654
- nestedjson
- euclideanalgorithm
- 동적계획법
- BFS
- boj2252
- Today
- Total
목록분류 전체보기 (41)
이마닷의 블로그
django에서 처음 django-admin startproject 명령어를 실행하면, 새롭게 만들어진 django 프로젝트의 DB는 기본적으로 SQLite라고 하는 DBMS(데이터베이스 관리 시스템)와 연동된다.하지만 SQLite는 말그대로, 'lite'한 DBMS이므로, 해당 django project를 실제 배포하기 이전에 테스트할 때에는 별 무리가 없지만, 배포 후 실제 서버에서 DBMS로 작동하기에는 다소 무리가 있다. 따라서 보통은 django 프로젝트를 PostgreSQL이나 MySQL 등과 같은 DBMS와 바꿔서 연동시키는데, 이 글에서는 MySQL과 연동시키는 방법을 말하고자 한다. 여기서 사용하는 MySQL 서버는 로컬 환경(127.0.0.1:3306)이다. 1. MySQL 설치하기ht..
0. 문제 https://www.acmicpc.net/problem/2116 2116번: 주사위 쌓기 첫줄에는 주사위의 개수가 입력된다. 그 다음 줄부터는 한 줄에 하나씩 주사위의 종류가 1번 주사위부터 주사위 번호 순서대로 입력된다. 주사위의 종류는 각 면에 적혀진 숫자가 그림1에 있는 주사위의 전개도에서 A, B, C, D, E, F 의 순서로 입력된다. 입력되는 숫자 사이에는 빈 칸이 하나씩 있다. 주사위의 개수는 10,000개 이하이며 종류가 같은 주사위도 있을 수 있다. www.acmicpc.net 1. 문제분석 - 이 문제는 주사위 번호가 증가할 수록, 조건을 만족하는 면들 중 가장 값이 큰 면을 선택하면 된다. 따라서 단순한 그리디 알고리즘 문제이다. 또한 조건을 만족하는 모든 경우의 수를 ..
django는 기본적으로 MTV(Model, Template, View)의 기능으로 이루어진다. django 프로젝트에서 Model은 데이터를 저장하고 그에 맞는 필드와 메소드가 있는 클래스를 뜻하며, Template은 실제 보여질 페이지의 html 파일들을 뜻하는데 이때 css 개념도 포함된다. 마지막 View는 django 프로젝트를 통해 구현된 웹 페이지가 Model에 담겨진 데이터를 가지고 구현될 수 있도록 하는 함수들을 뜻한다. FBV와 CBV는 각각 Function-Based View, Class-Based View를 뜻하는데, FBV는 말그대로 '함수', 즉 python에서 def 명령어를 통해 선언되는 단독의 함수들을 통해 구현된 View를 가리킨다. 이와 달리 CBV는 함수가 아닌 클..
0. 문제 https://www.acmicpc.net/problem/2643 2643번: 색종이 올려 놓기 첫 번째 줄에는 색종이의 장수가 주어진다. 다음 줄부터 각 줄에 색종이의 두 변의 길이가 주어진다. 두 변의 길이는 한 칸 띄어 주어진다. 색종이의 최대 장수는 100이고, 각 변의 길이는 1000보다 작은 자연수이다. www.acmicpc.net 1. 문제분석 - 이 문제는 색종이들을 쌓아올렸을 때, 해당 색종이를 위에 올려 놓을 수 있느냐 없느냐의 여부가 여태까지 쌓아올린 색종이 더미 중 가장 위에 있는 색종이의 가로 세로 길이에 따라 달라진다. 즉, 현재의 경우가 직전의 경우에 영향을 받게 되므로, 동적 계획법(dynamic programming)을 사용해서 문제를 풀어야 했다. - 또한 색종..
커널(kernel)에서 디렉토리나 파일을 만들고, 삭제하고, 수정하고, 이동하는 쉘의 기본 명령어를 배웠다면, 이제는 git을 이용하기 위해 git 명령어를 배워야 한다. git 명령어는 항상 'git'으로 시작하며, "git 명령어 [옵션] [매개변수]"와 같은 형식으로 사용한다. git의 가장 핵심적인 명령어는 "git commit"이다. 커밋(commit)이란 어떤 파일에 대하여 그 파일의 변경된 내용과 작업한 사용자, 그리고 시간에 대해 기록을 남겨두는 것이다. 즉, commit을 통해 프로젝트 내 파일의 내용이 변경되고, 그와 관련된 기록이 commit함과 동시에 git에 남게 되는 것이다. 이는 파일을 변경 사항이 반영된 버전 별로 관리하게 해주고, 이것이 바로 우리가 github을 VCS(V..
0. 문제 https://www.acmicpc.net/problem/1162 1162번: 도로포장 문제 준영이는 매일 서울에서 포천까지 출퇴근을 한다. 하지만 잠이 많은 준영이는 늦잠을 자 포천에 늦게 도착하기 일쑤다. 돈이 많은 준영이는 고민 끝에 K개의 도로를 포장하여 서울에서 포천까지 가는 시간을 단축하려 한다. 문제는 N개의 도시가 주어지고 그 사이 도로들과 이 도로를 통과할 때 걸리는 시간이 주어졌을 때 최소 시간이 걸리도록 하는 K개의 이하의 도로를 포장하는 것이다. 여기서 도로를 포장하게 되면 도로를 지나는데 걸리는 시간이 0이라 하자. www.acmicpc.net 1. 문제 분석 - 이 문제는 양방향 그래프에서 정해진 정점(1번 도시, 서울)을 기준으로 다른 정점(N번 도시, 포천)까지의 ..
0. 문제 https://www.acmicpc.net/problem/1194 1194번: 달이 차오른다, 가자. 첫째 줄에 미로의 세로 크기 N과 가로 크기 M이 주어진다. (1 ≤ N, M ≤ 50) 둘째 줄부터 N개의 줄에 미로의 모양이 주어진다. 같은 타입의 열쇠가 여러 개 있을 수 있고, 문도 마찬가지이다. 그리고, 영식이가 열쇠를 숨겨놓는 다면 문에 대응하는 열쇠가 없을 수도 있다. 0은 한 개, 1은 적어도 한 개 있다. 그리고, 열쇠는 여러 번 사용할 수 있다. www.acmicpc.net 1. 문제 분석 이 문제는 우선 그리드가 주어지고, 조건을 만족하기 위한 이동 횟수의 최솟값(최단 경로)를 찾는다는 점에서 BFS 알고리즘을 이용해 문제를 풀어야 한다. 2. 유의할 점 - 각각 여섯 개의..
현재 Windows 환경에서 공부를 하고 있기 때문에 본 글에서는 구름 IDE(https://ide.goorm.io/)라는 온라인 IDE를 사용한다쉘(Shell)은 터미널에서 사용자가 작성한 명령어를 해석하여 OS(운영체제)에게 이를 전달하는 역할을 하는 프로그램이다.1. pwdpwd는 현재 경로를 확인해주는 명령어이다. Print Working Directory의 줄임말이다. 2. cdcd는 디렉토리(폴더)를 이동하는 명령어다. 보통 "cd 디렉토리명"과 같은 형식으로 사용하고, 디렉토리명의 자리에 ".."을 사용한다면 상위 디렉토리로 이동하게 된다. 3. lsls는 현재 위치의 디렉토리에 속한 디렉토리와 파일들을 보여준다. 구름 IDE에서는 하위 디렉토리는 파란색으로, 파일은 흰색으로 나타난다. 뒤..