반응형
- [프로그래머스] 스택/큐 - 기능 개발(파이썬 문제풀이) 문제 링크 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr deque 함수를 통해 큐 자료구조로 문제를 풀이했습니다. 다른 분들이 풀이하신 것은 대부분 각 기능의 개발 시간을 배포 날짜마다 구하는 코드가 많았는데, 저는 큐에 먼저 모든 기능을 개발하는데 걸리는 시간을 입력해두었습니다. 큐에 자료가 없을 때까지 반복문을 이어가며 큐의 제일 첫 번째 항목이 현재 기능의 개발 시간보다 적게 걸리면, 함께 배포할 수 있는 것으로 판단했습니다. 문제 풀이(파이썬) from collections import de.. 2022.03.12
- [Node.js] Express + MySQL로 REST API 만들기 (2) 이번 포스팅에서는 DB 서버와 Express 서버 간 연결하는 코드를 작성하고, 모듈화하여 사용하는 것을 작성해보겠습니다. 준비물 DB 주소 DB 포트 DB 접속 계정 아이디/패스워드 연결할 DB(스키마)명 DB GUI 툴(MySQL Workbench, Sequel Pro 등) DB 드라이버 설치 express와 mysql을 연결하기 위해선 mysql 드라이버가 필요합니다. npm 에서 mysql 이라는 이름의 패키지를 설치하시면 됩니다. > npm i mysql DB 연결 app.js 파일에 아래 코드를 추가하여 DB와 연결하는 객체를 만들어 보도록 하겠습니다. mysql 내의 createConnection 메서드를 이용해 DB 정보를 입력하면 됩니다! // app.js에 추가 const mysql =.. 2021.04.02
- [프로그래머스] 완전탐색 - 모의고사(파이썬 문제풀이) 문제 링크 단순하게 문제 조건대로 구현해서 풀었습니다. repeat 이라는 2차원 배열에 문제에서 제시된 1번, 2번, 3번 학생의 반복 규칙을 넣어두고 chk 라는 함수를 만들어 각 학생별 점수를 확인하도록 했습니다. 학생별 점수를 res 배열에 넣어두고 가장 큰 점수를 구해 res에서 가장 큰 점수의 학생 번호를 answer 리스트에 추가한 뒤 리턴하도록 코드를 작성했습니다. 저는 chk 함수에서 idx == len(tmp) 라는 조건으로 학생의 반복 규칙을 회전하도록 구성했는데, 이 부분을 나머지 연산으로 대체한다면 각 학생별로 chk 함수를 돌릴 필요없이 for 문 한번으로 해결할 수 있겠습니다. 문제 풀이(파이썬) def chk(idx, tmp, answers): score = 0 for i i.. 2021.04.02
- [프로그래머스] 해시 - 베스트앨범(파이썬 문제풀이) 문제 링크 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr 딕셔너리 두 개를 사용해 문제를 풀어봤습니다. genre_score : 각 장르별 속한 노래의 총 점수를 저장하는 딕셔너리 chk : 노래의 고유번호를 key 값으로 사용하고, value로 [해당 노래가 속한 장르의 점수, 해당 노래의 개별 점수]를 저장 이제 문제에 제시된 노래 수록 기준에 맞추어 정렬을 하고 추출을 하면 되겠습니다. for문으로 두 딕셔너리의 값을 설정한 뒤 sorted를 이용해 딕셔너리를 정렬했습니다. 먼저 수록 기준 1번을 맞.. 2021.04.02
- [프로그래머스] 해시 - 위장(파이썬 문제풀이) 문제 링크 코딩테스트 연습 - 위장 programmers.co.kr 간단한 수학 공식을 이용해 문제를 풀이했습니다. 각 옷의 종류마다 몇 개의 옷을 가지고 있는지 구하고 그 수를 모두 곱하면 그 수들을 조합한 경우의 수가 나오게 됩니다. 하지만 이렇게 계산하면 해당 옷의 종류가 포함되지 않았을 때의 경우의 수가 빠지게 되므로 (해당 옷의 종류 + 1)을 해준 값을 곱해야 원하는 결과가 나옵니다. 또 문제에서 반드시 한 개의 의상을 착용해야한다고 했으므로 모두 안입었을 경우의 수 하나를 최종 값에서 빼주어야 합니다. 다른 분들 코드를 보니 딕셔너리를 사용할 때 분기문으로 해당 키값이 현재 딕셔너리에 포함되어있나 확인하는 코드를 넣었는데, 저는 딕셔너리의 내장 함수 get을 이용하여 따로 분기 처리를 하지 .. 2021.04.01
- [ PyQt5 ] Qt Designer로 ui 파일 만들기, 연결하기 / 버튼과 함수 연결하기 Qt Designer? PyQt로 GUI 프로그래밍을 할 때 쉽게 레이아웃을 편집할 수 있도록 도와주는 편집기. 아나콘다를 설치하면 PyQt5와 함께 자동으로 설치됨 Qt Designer 없이 파이썬 코드만으로도 GUI 프로그래밍이 가능하긴함 1. Qt Designer 실행 - Anaconda Prompt 열기 - designer 입력 2. ui 파일 생성 - Main Window 선택 후 [ 생성(R) ] - 좌측 위젯 상자에서 [ Push Button ] 을 MainWindow로 드래그 앤 드롭 * 원하는 위젯을 좌측 위젯 상자에서 윈도우창에 드래그 앤 드롭으로 위젯을 추가할 수 있다. - [ PushButton ] 선택 후 우측 속성 편집기 -> objectName 변경 -> [ testBtn ] .. 2020.06.22
- [ CentOS ] RPM 명령어 정리(설치, 조회, 삭제, 업데이트) RPM? CentOS에서 패키지(프로그램)를 설치하는데 사용한다. 윈도우에서 setup.exe로 프로그램을 설치하는 것과 비슷한 개념으로 .rpm 확장자를 가진 설치 파일로 패키지를 설치한다. yum이 나오기 전에 주로 사용되었으며 yum이 rpm의 개념을 포함하고 있다. 온라인 환경에서는 yum을 사용하여 쉽게 패키지 설치를 할 수 있지만 오프라인 환경에서 리눅스 패키지를 설치한다면 rpm을 이용해 설치한다. yum은 자동으로 패키지 간의 의존성 문제를 해결해주지만 rpm은 패키지의 의존성에 주의하여 설치해야한다. rpm의 설치 경로가 담긴 repo 파일은 /etc/yum.repos.d/ 에서 관리한다. 설치 rpm -i [패키지명] rpm -ivh [패키지명] # 설치 과정을 해쉬 마크로 화면에 출력.. 2020.03.18
- [ CentOS ] Rsync를 이용한 파일 가져오기/복사/동기화(Rsync 옵션 정리) Rsync? Remote Synchronization의 약자로 로컬 또는 원격지의 데이터를 동기화(가져오기)위한 유틸리티이자 프로토콜. 파일과 디렉터리를 가져올 수 있어(동기화) 백업 / 미러링 용도로 사용할 수 있다. (링크, 소유자, 권한 등 부가정보도 함께 복사가 가능하다.) 데이터를 압축해서 이동하고 변경된 파일만 복사하기 때문에 빠르고 효율적이다. => I/O 소모 최소화 lsyncd : 데몬으로 작동하며 변경점을 바로 반영하는 유틸리티 * rsync는 보통 CentOS에 기본으로 설치됨 => 없는경우 yum으로 설치! 기본 사용법 > rsync [option] [ 가져올 파일의 경로 ] [ 가져온 파일을 놓을 경로 ] # 기본 > rsync [option] 접속계정@원격지주소:/경로 [ 가져온.. 2020.04.10
- [ CentOS ] VMware에서 USB 마운트하기 작업환경 VMware CentOS 7 64bit CLI VMware에 설치된 CentOS 텍스트 모드(CLI) 환경에서 USB를 마운트하여 데이터를 옮기기 1. USB 장치명 확인 USB를 PC에 마운트하면 VMware에 마운트 할 것인지 로컬에 마운트 할 것인지 선택창이 나온다. VMware의 CentOS로 선택하면 화면에 "sd~"로 장치가 마운트된다. * 경로 : /dev/sd~ 2. 마운트할 경로 만들기 mkdir /home/usb 3. 장치 마운트 mount sdb /home/usb 4. 장치 제거 umount [ 마운트한 디렉터리 ] 2020.03.17
- [ Mac OS ] iTerm2 AWS EC2 SSH 접속 저장하여 사용하기 EC2를 접속할 때마다 번거롭게 ssh -i ~ 명령어를 입력하지 않고 간편하게 프로필에 등록해 놓고 클릭 한 번으로 EC2에 접속할 수 있습니다! EC2 접속 .pem 파일 생성 → 생성 방법은 구글링하면 쉽게 찾아볼 수 있으므로 생략하겠습니다. EC2 접속 방법 확인 AWS EC2 > 인스턴스 > 작업 > 연결 SSH 클라이언트 탭으로 이동 후 내용 확인 .pem 파일 경로로 이동한 뒤 권한 설정 > chmod 400 파일명.pem 상단 탭 > Profiles > Open Profiles Edit Profiles > 좌측 하단 + 버튼 클릭 항목 입력 Name : 식별할 수 있는 이름 지정 Tags(선택) : 식별하기 위한 태그 설정 Command : 선택 상자 Command 로 바꾼 뒤 2번에서 확.. 2021.02.03
반응형