본문 바로가기

전체 글

(67)
브루트포스 브루트포스를 사용할 때 마다 방식이 헷갈려서 참고용으로 저장해놓는 것이라, 최대한 간단하게 에시 코드만 적겠습니다. 기본적으로는 python을 이용합니다. # 재귀를 통한 순열, DFS 라고도 하는 듯? 1 2 3 4 5 6 7 8 9 10 11 12 def brute(l, candidates): if len(l) == len(totalList): print(l) else: for c in candidates: _candidates=candidates[:] _candidates.remove(c) brute(l+[c], _candidates) n = int(input()) totalList = list(range(1, n+1)) brute([], totalList) cs # 백준 14888번 연산자 끼워넣..
2019 전역 후 보낸 한 학기 인트로 여유롭게 보낸 시기도 있었고 시간이 정신 없이 흘러갔던 시기도 있었는데데, 어느 덧 전역 한 지도 반 년이 지나 한 학기가 끝나고 방학도 어느 정도 지났다. 가끔 개발자들이 반기마다 회고록을 쓰는 걸 보긴 했는데, 이건 개발자의 회고록이라기 보단 그냥 내 일기 같은 느낌으로 써본다. ㅎㅎ 왜 닉네임이 우미인가 사실 왜 닉네임으로 우미를 쓰는 지는 아무한테도 말 한 적이 없다. 조금 오글거려서..? 별로 할 닉네임이 없어 전역 전에 근무서면서 고민하던 중, 원래 둥글둥글한 발음의 'ㅇ'을 좋아했었는데, 내가 우연히 코딩을 접했던 것, 그 우연으로 내 인생의 방향이 달라지기 시작했던 것을 의미로 하여 우연의 미학으로 이름을 붙인 것이다. 듣는 사람에 따라 좀 오글거릴 수도 있는데 뭐 그냥 그렇다. 그..
[백준알고리즘] 1931번 회의실 배정 동아리에서 코딩테스트 준비를 시작했다. C++로 짜니까 어려운 것 같다가도 python으로 짜보니 또 C++이 편한 것 같기도... 효율은 C++이 좋은 것 같기는 하다. 그리디 알고리즘이라는 것을 이용한다고한다. 딥러닝할 때의 그리디인줄.. 근데, 내가 좋아하는 알고리즘 문제는 지식이 없어도 생각하면서 풀 만한 정도의 문제랄까.. 근데 생각해본 다음에 알아보니까 내가 푸는 방식이 그리디 방식이 맞더라 헤헷. 그리디 알고리즘은 이미 설명이 많이 되어있으니 한 번 찾아보시고 ( 사실 문제를 풀었지만 나도 딱히 알아보진 않음 ) 처음에 이 문제를 C++로 풀 때 많이 애를 먹었다... for문에서 필요없는 break;을 하나 넣어서 반례로도 잘 안찾아져가지고.. 배운 점 사람들은 C++에서는 vector를 ..
docker-compose를 통해 Nginx, Django 연동하기 1 - 간단한 Django app 만들기 소개docker-compose 를 통해 Nginx, uWSGI, Django 를 이용한 웹 서버, 웹 애플리케이션을 구축해보는 아주아주 씸플한 Super simple application을 만들어보겠다.이번 주말 내내 이 작업을 엄청 했더니 어느정도 쉬운 구조에서는 도가 트였다. 이러한 도커 애플리케이션을 만들 것이다.그냥 IP:Port에 접속했을 때 인사를 해주는 간단한 Django Application을 웹서버에 올려보자. 프로젝트 구조는 위와 같다. 이번 시간엔 django 디렉토리까지만 다루겠다. 작업 내용 프로젝트 구조에 맞게 디렉토리와 virtual environment를 설정해준다. django-admin command를 이용해서 django project와 그 속의 app을 생성해준다. 이..
웹서버를 짜주는 Django 에서 프로젝트를 구성하는 방식 Intro 방학을 맞이해서 우선은 Django 및 DB 공부를 시작하게되었는데, 일주일에 한 번 정도는 배웠던 내용을 정리하고자 블로그에 포스트를 쓰려한다. 지금도 검색 한 번이면 중복되는 내용이 수두룩하게 나올만한 너무 흔한 내용은 이제 블로그에 적으나 마나이니까, 내가 궁금했던 것 바탕으로 알아본 내용 중 주로 세부적인 부분을 다뤄보려한다. 아무래도 첫 번째 글이다 보니, Django에 대한 전체적인 내용을 다루려하는데, 개인적으로 내가 당황했던 Django의 Project Structure에 대해 다뤄보려 한다. Django 가 무엇이지? 간단히 말하자면 Web Server나 Web Application을 편리하게 짤 수 있도록 도와주는 Python Framework이다. 생각보다 Wikipedia..
AWS EC2와 Docker container로 웹서버 구축하기 AWS EC2 Instance 위에서 Docker container 위에서 Python Flask module 을 이용해서 웹서버 구축하기 # 요약 순서 1. AWS EC2 instance의 port를 열어준다. 2. server을 run하는 python file을 만들어준다. "0.0.0.0":에 server가 run되도록 설정한다. 3. Dockerfile에 EXPOSE 4. docker build ... 5. docker run -p : 6. 외부에서 Instance의 외부 IP를 통해 접속해본다. ( 원래는 컨테이너를 통하여 외부에서 접속하기 위해서는 복잡한 network 설정을 거쳐야하는 것 같은데, EC2 instance의 경우 별도의 설정없이 외부에서 접속이 가능했다. 일반적으로 자기 mac..
AWS EC2 에서 Docker 개발 환경 구축하기 sudo passwd root로 root account 의 password 설정 su root 로 root user로 접속편의상 python, pip, vim등의 패키지를 그냥 설치했다. curl -o get-pip.py https://bootstrap.pypa.io/get-pip.py python3 get-pip.py python get-pip.py rm get-pip.py cd /usr/loal/bin rm python ln -s python3 python 이제 sudo pip install 으로 pip 사용가능혹은 pip install --user 으로 user directroy내에 패키지 인스톨가능 이후 docker를 설치하고 가볍게 테스트해보기위해 hello-world 이미지를 이용해보자. ap..
리눅스에서 파이썬 환경 구축하기 (Docker를 이용해 테스트) 문제상황 리눅스를 쓰면서 sudo apt-get install sudo apt install curl url wget url make filename 등등 다양한 방법을 통해 package를 install 해왔다. 하지만, 무분별하게 닥치는 대로 install 해나가다보니 python 과 pip 버전이 꼬이게 되었고, 어떤 pip가 어떤 version의 python을 가리키게 되는지, virtual env가 설정이 되어있느지 등등 아무것도 모른 채 그냥 사용하다가 오류가 나게되었다. 그래서 요즘 배운 기술인 Docker를 이용해서 독립적인 가상환경을 구축하여 한 번 python 과 pip에 대해 디렉토리가 어떻게 설정되어있는지, 설치는 어떻게 해야하는지 정리해보았다. 여러가지 방법 존재 virtual e..