본문 바로가기

Python

(5)
[파이썬] (level4) 땅따먹기 게임 자소서 문제 접근 방법 pre_dup : 이전(previous) 라인의 max값 중복 유무 cur_dup : 현재(current) 라인의 max값 중복 유무 pre_max_idx : 이전 라인의 max값 인덱스 cur_max_idx : 현재 라인의 max값 인덱스 경우의 수를 직접 만들어봐야 한다. 인덱스의 겹침 유무는 나중에 판단해도 된다. max값이 리스트 내에 또 있는지가 중요하다. (즉, 중복 유무) 단, for문의 range는 0이 아니라 1 부터 시작한다고 가정한다. (1) pre_dup (O) cur_dup (O) 5 12 12 3
[파이썬] (level4) 가장 큰 정사각형 찾기 (level4)가장 큰 정사각형 찾기 5중 포문 이용하기 데이터 개수 1452행 * 5열 배열일 때 (즉, 7260)개 일때, 100번 실행 결과의 평균 >>> print("실행시간 : ", time.time()-start_time) 1.1673초 아이디어 처음 풀었을 때는 DP의 개념을 몰랐기 때문에 노가다로 한번 풀어봤다. def findLargestSquare(board): # board의 길이를 측정한다. 다만, 전역변수 max_x와 max_y를 좌표값으로 활용해야 하기 때문에 (실제 길이 - 1)을 한다. max_x = len(board) - 1 max_y = len(board[0]) - 1 max_square = 0 # 정사각형의 최대 넓이 for x in range(0, len(board))..
[Django] 네이버 영화 API 사용하기 1주차 Naver API 연동하기 Django에서 Naver API 활용하기 네이버 영화 API의 예제코드는 영화탭이 아니라 블로그 탭에 있다. # 네이버 검색 API예제는 블로그를 비롯 전문자료까지 호출방법이 동일하므로 blog검색만 대표로 예제를 올렸습니다. # 네이버 검색 Open API 예제 - 블로그 검색 import os import sys import urllib.request client_id = "YOUR_CLIENT_ID" client_secret = "YOUR_CLIENT_SECRET" encText = urllib.parse.quote("검색할 단어") url = "https://openapi.naver.com/v1/search/blog?query=" + encText # json ..
[DJango] AbstractBaseUser vs AbstractUser 비교하기 AbstractUser vs AbstractBaseUser AbstractUser vs AbstractBaseUser AbstractBaseUser를 상속하게 되면 Class MyUser(AbstractBaseUser): pass 꼴랑 2개밖에 안던져준다(id는 자동생성 되는 필드니까). 이를 상속해서 유저 모델을 구축한다면 세밀한 컨트롤이 가능하지만 세그만큼 손도 많이 간다. 만약 페이스북 이메일 인증(permission)을 통한 가입을 하고 싶다면 AbstractBaseUser를 사용해야 한다. 상속받는 클래스틀 타고 들어가면 아래처럼 구현되어있다. class AbstractBaseUser(models.Model) password = last_login = def get_username(self): ..
[Django] Django Rest Framework(DRF) 알아보기 1부 REST_API Django REST Framework (DRF) REST REST에 관해서 많은 블로그 글들이 자세하게 설명하고 있기에 여기서는 간단하게 설명하고자 한다. REST는 WEB 관련 기술이다. 데이터를 주고받는 일종의 규약이다. 단순하다. 사용하기 편하다. Open API와 궁합이 좋다. HTTP 기본 메서드 4가지(POST, GET, PUT, DELETE)를 통해 일관적인 컨벤션(관례)을 유지한다면 RESTful 하다고 한다. 좀 더 자세히 알아보고 싶다면 이 블로그를 추천한다. http://blog.remotty.com/blog/2014/01/28/lets-study-rest/ 직렬화 하기 처음에 이름부터 너무 어렵게 느껴져서, 직렬화라는 용어 자체가 두려움의 대상이었다. 그래서, 초심..