일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘 연습
- Algorithm
- AWS
- Git
- 알고리즘 문제
- Django
- react
- 장고
- javascript
- MAC
- c++
- form
- java
- CSS
- API
- django widget
- 백준
- 파이썬 알고리즘
- 알고리즘
- PYTHON
- 파이썬
- 알고리즘 풀이
- django ORM
- es6
- DRF
- django rest framework
- Baekjoon
- HTML
- web
- js
- Today
- Total
목록분류 전체보기 (341)
수학과의 좌충우돌 프로그래밍
Generic display views 에는 DetailView 와 ListView 가 있습니다. DetailView 는 각 상세 페이지를 나타내는데 있어서 ListView 는 전체적인 페이지를 나타내는데 있어서 굉장히 효과적입니다. 두 클래스를 알아보도록 합시다. DetailView 실습 전체적인 코드를 살펴보기 전에 어떻게 사용되고 있는지 예시를 먼저 보도록 하겠습니다. DetailView 의 역할은 각 상세페이지를 보여주는 역할을 합니다. 간단히 Post 모델을 정의하고 이 상세페이지를 보여주도록 하겠습니다. # models.py from django.db import models class Post(models.Model): title = models.CharField(max_length=20) ..
CBV 란? 기존에는 views 를 함수로 사용해왔습니다. 이는 Function Based View , 줄여서 FBV 라고 합니다. 그렇다면 함수 외에 다른 것으로 views 를 작성할 수는 없을까요? 가능합니다. views는 사실 함수가 아닌 Callable Objects,즉 호출가능한 객체면 문제 없습니다. 함수도 호출가능한 객체 중 하나이기 때문에 사용할 수 있는 것이죠. 따라서 다른 호출가능한 객체인 클래스로도 views 를 구성할 수 있습니다. 이는 Class Based View, 줄여서 CBV 라고 합니다. CBV 의 장점 우선 클래스의 장점을 모두 사용할 수 있습니다. 상속, 오버라이딩 등등 여러 방식으로 코드의 효율을 극대화 할 수 있습니다. FBV 로 views 를 작성하다보면 생각보다 ..
머신러닝을 공부하면서 연구실로 부터 GPU 가 있는 서버를 받아 ssh 로 접속을 하여 사용하고 있습니다. 구글링 하면서 접속하는 방법은 찾아서 문제없이 하고 있지만 정작 ssh 가 뭔지도 명확하지 않으니 서버에서 문제가 발생했을 때 발만 동동 구르고 있습니다. 그래서 ssh 에 대해서 간략하게나마 공부하고 정리해보았습니다. ssh란? 제목에서 부터 할 수 있듯이 Secure Shell Protocol 의 줄임말로서 네트워크 프로토콜 중 하나 입니다. HTTP 에 대해 알아보면서 프로토콜은 컴퓨터와 컴퓨터가 통신하기 위한 규약인 걸 알았으니 ssh 도 그 중 하나입니다. 다만 특별한 점은 Secure라는 이름에서도 알 수 있듯이 보안을 강조한 안전한 프로토콜입니다. 기존의 telnet, RSH, rlog..
우리는 직접 웹사이트에 들어가지 않고도 정보를 얻을 수 있습니다. CLI 를 통해 명령어를 입력하는 것으로만으로 말이죠. 앞으로 공부할 django restful API 처럼 API 를 테스트 하는데도 사용할 수 있습니다. 기존에는 cURL 을 많이 사용한 듯한데 최근에는 사용이 더 쉬운 httpie 가 더 선호되고 있습니다. 그래서 httpie 에 대해서 알아보도록 하겠습니다. Httpie 란? Httpie 는 CLI HTTP 클라이언트 입니다. 다른 HTTP 클라이언트가 무엇이 있을까요? 우리가 일반적으로 사용하는 웹 브라우저가 가장 대표적인 클라이언트라고 할 수 있겠습니다. 서두에서 말한대로 웹 사이트, 즉 웹 브라우저를 통해 들어가지 않고도 Httpie 라는 다른 클라이언트를 통해서 같은 정보를 ..
문제보기 9007번: 카누 선수 문제 국제 카누 경주 챔피언십 (International Canoe Sprint Championship : ICSC)가 머지 않아 개막된다. ICSC에서 인증하는 공식 보트는 C1, C2 그리고 C4로 구성되며, "C"는 카누를 그리고 숫자는 노를 젓는 사람의 수를 의미한다. 카누 경주는 잔잔한 물 위의 여러개로 구획된 직선 코스에서 이루어진다. ICSC에서는 국제 경기를 200m, 500m 그리고 1000m로 구분하고 있다. 한국 스포츠 학교(Korea www.acmicpc.net 쉽게 생각해서 4중 for 문으로 구현하면 쉽게 나올 수 있지만 시간초과에 걸립니다. n의 범위가 최대 10^3 까지 이고 4중 for 문이면 10^12 이고 1초 이상이므로 여러 테스트 케이..
문제보러가기 8901번: 화학 제품 문제 상근이는 각기 다른 병에 담긴 세 화학 물질 A, B, C를 가지고 있다. 두 화학 물질을 같은 양만큼 혼합하면, 화학 제품을 얻을 수 있다. A와 B를 혼합하면 AB가 되고, B와 C를 혼합하면 BC, C와 A를 혼합하면 CA가 된다. (A 하나와 B 하나를 혼합하면 AB 하나를 얻게 된다) AB, BC, CA의 가격은 모두 다르다. 따라서, 만드는 화학 제품에 따라서 얻는 이익은 달라진다. 항상 정수 단위 만큼 두 화학 물질을 혼합할 수 있다. www.acmicpc.net 입력으로 주어지는 모든 숫자는 1000이하이기 떄문에 다음과 같이 어렵지 않게 접근하였습니다. ab 혼합물의 수를 0부터 a,b의 갯수의 최소값까지 만들어준다. bc 혼합물의 수를 0 부터 ..
문제보러가기 8895번: 막대 배치 문제 높이가 1, 2, ..., n인 막대 n개가 일렬로 배치되어 있다. 막대를 왼쪽이나 오른쪽에서 보면, 큰 막대가 뒤에있는 작은 막대를 가리게 된다. 아래와 같이 4개의 막대로 이루어진 두 배치를 살펴보자. 위의 두 배치는 모두 왼쪽에서 봤을 때 막대가 한 개 보이고, 오른쪽에서 봤을 때는 막대가 두 개 보인다. 막대의 개수 n과 왼쪽에서 봤을 때 보이는 막대의 개수 l, 오른쪽에서 봤을 때 보이는 막대의 개수 r이 주어진다. 이때, 이러한 결과를 만 www.acmicpc.net 동적계획법을 사용한 문제였습니다. 먼저 점화식을 세워보도록 하겠습니다. dp[n][l][r] 를 n 개의 막대에 대해, 왼쪽에서 보이는 막대가 l 개, 오른쪽에서 보이는 막대가 r 개인 경..
Media 파일이란? media 파일이란 FileField 를 통해 저장한 모든 파일을 지칭합니다. 물론 ImageField 도 FileField 를 상속받은 필드로서 유사 필드들을 통해 저장된 파일도 media 파일입니다. 이는 특별하게 db 필드에는 저장경로를 저장하고 파일은 뒤에서 다시 다루겠지만 settings.MEDIA_ROOT 경로에 저장 하게 됩니다. settings 에서의 설정 MEDIA_URL MEDIA_URL = '/media/' 각 media 파일에 대한 URL 의 고정값을 설정할 수 있습니다. 예시를 들자면 필드명.url 에 의해 MEDIA 파일에 대하여 접근할 때 결정되는 값입니다. MEDIA_ROOT MEDIA_ROOT = os.path.join(BASE_DIR, 'media')..
Static 파일이란? static 파일이란 js, css, image, font 등과 같이 개발자가 사전에 미리 서버에 저장 해둔 파일들을 말합니다. 정적인 파일들이라고 할 수 있습니다. settings 에서의 설정 STATIC_URL STATIC_URL = '/static/' 이미 settings 에 위와 같이 설정이 되어있습니다. 이를 통해 각 static 파일에 대한 URL의 고정값을 설정할 수 있습니다. 예시를 들자면 {% static '경로' %} 에 대해서 해당 URL 이 STATIC_URL+'경로' 로 바뀌게 되고 이는 다시'/static/경로' 다음과 같이 바뀌게 되어 참조를 할 수 있습니다. STATICFILES_DIRS STATICFILES_DIRS = [ os.path.join(BA..
Django의 파이썬 변수를 templates 로 넘겨주기 위해서 템플릿 문법를 사용합니다. 단순히 문자열 값을 나타내기 위해서는 문제가 없지만 javascript 에서 처리를 해줘야 할 상황이 온다면 제한 사항이 생깁니다. 이럴 때는 특별한 과정이 필요한데 이에 대해서 알아보도록 하겠습니다. 문제 발생 상황 어느 상황에서 문제가 발생했는지 전체적인 코드를 간단하게 설명해드리겠습니다. models.py from django.db import models # Create your models here. class Profile(models.Model): name = models.CharField(max_length=10) def __str__(self): return self.name def as_dict..