본문 바로가기

이철규

(142)
[파이썬] (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 ..
[파이썬] pyenv, virtualenv 설치 및 가상환경 생성하기 pyenv, virtualenv Pyenv와 Virtualenv 설정하기 OS : Ubuntu 16.04 LTS Mac OS X : 10.11 왜 설치해야 하죠? pyenv는 로컬환경(즉, 나의 컴퓨터)에 다양한 파이썬 버전을 확인할 수 있습니다. 요약을 하면 "쉽게 설치할 수 있다" 라는 것을 강조하고 싶습니다. "엥!? 파이썬만 설치하면 되는거 아냐?" 라고 생각하실 수 있지만, 사실 python에 기반한 수많은 배포판들이 존재합니다. Anaconda : 파이썬 기반의 개방형 데이터 과학에 특화된 플랫폼입니다. Jython : 파이썬으로 자바를 구현한 플랫폼입니다. pypy : 파이썬은 C로 짜였습니다. pypy는 파이썬으로 파이썬을 만들었습니다. 사용해볼 일이 있을까? 라는 생각이 들겠지만 특정 상..
[파이썬] 카카오 블라인드 공채 1번 문제 q1 친구따라서 풀어본 카카오 알고리즘 문제였다. 7문제가 출제되었고 부분 점수는 없었다. 나같은 경우에는 1번 문제, 5번 문제만 손댈 수 있었는데 1번 문제는 완벽하게 맞았다. 겨우 한 문제 맞았지만, 이정도라면 충분히 만족(?)스럽다. 꾸준하게 나아가자. 문제 def solution(n, arr1, arr2): answer = [] return answer 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다행히 지도 암호를 해독할 방법을 적어놓은 메모도 함께 발견했다. 지도는 한 변의 길이가 n인 정사각형 배열 형태로, 각 칸은 "공백"(" ") 또는 "벽"("#") 두 종류로..
[파이썬] level3 시저암호 (level3)시저암호 문제 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. A를 3만큼 밀면 D가 되고 z를 1만큼 밀면 a가 됩니다. 공백은 수정하지 않습니다. 보낼 문자열 s와 얼마나 밀지 알려주는 n을 입력받아 암호문을 만드는 ceasar 함수를 완성해 보세요. “a B z”,4를 입력받았다면 “e F d”를 리턴합니다. 나의 접근법 이상하게 쉽게 풀릴 것 같았는데, 하루정도 걸려서 풀었다. 가장 직관적으로 떠오른 생각은 아스키코드(ASCII) 코드를 활용하자는 것이다. 아스키코드가 뭔지 잘 모른다면, 쑥쓰러운 나의 블로그 포스팅 아스키코드와 유니코드의 이해 을 소개한다. 문제를 풀 때 가장 먼저 고려했던 것은 공백을 반영해야 한다는 것..
[파이썬] level3 야근지수 rect 문제 회사원인 수민이는 많은 일이 쌓여 있습니다. 수민이는 야근을 최소화하기 위해 남은 일의 작업량을 숫자로 메기고, 일에 대한 야근 지수를 줄이기로 결정했습니다. 야근 지수는 남은 일의 작업량을 제곱하여 더한 값을 의미합니다. 수민이는 1시간 동안 남은 일 중 하나를 골라 작업량 1만큼 처리할 수 있습니다. 수민이의 퇴근까지 남은 N 시간과 각 일에 대한 작업량이 있을 때, noOvertime 함수를 제작하여 수민이의 야근 지수를 최소화 한 결과를 출력해 주세요. 예를 들어, N=4 일 때, 남은 일의 작업량이 [4, 3, 3] 이라면 야근 지수를 최소화하기 위해 일을 한 결과는 [2, 2, 2]가 되고 야근 지수는 22 + 22 + 22 = 12가 되어 12를 반환해 줍니다. 접근 방법 수학..
docker non-zero code 127 error non-zero code 127 error 증상 /bin/sh: 1: npm: not foundThe command '/bin/sh -c npm install' returned a non-zero code: 127 도커파일에서 RUN npm install를 진행하는데 위 에러를 계속해서 발생시켰다. 소요한 시간은 대략 3시간 정도를 허비했다. 원인 여러 stackoverflow와 github issue글을 살펴봤지만 명확한 원인을 찾을 수 없었다. 꼭 npm만의 문제는 아닌듯 했고, 어떤 글들은 스왑 메모리 용량이 부족하다고 까지 했다. 그래서 swapon -s를 통해서 메모리 확인을 해봤는데, 정말로 메모리를 많이 잡아먹길래 재부팅을 실시했다. 그래도 증상은 나아지지 않았다. 해결법 ##..
[Django] 폼(Form)에서 commit=False의 의미 form Commit=False Django에서 모델 Form을 다루다보면 종종 commit=False라는 코드를 마주칠 때가 있다. 가끔씩 헷갈리는 부분이기 때문에 장고 공식문서를 통해 학습하고자 한다. save(commit=False) 왜 사용하나요? 한줄요약 : commit=False를 하게 되면 데이터베이스에 당장 저장하지 않는다. 언제쓰지? : DB에 데이터를 저장하기 전에 특정 행위를 하고 싶을 때 사용한다.. 실제 예제 모델 작성자 모델 idnickname 1사용자1 2사용자2 class Author(models.Model): nickname = models.CharField(max_length=20) 간단하게 회원가입할 때 적는 아이디(ID)를 nickname 필드로 지정했다. 게시글 모델..