반응형
- [프로그래머스] 스택/큐 - 기능 개발(파이썬 문제풀이) 문제 링크 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 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
- [ CentOS ] Rsync를 이용한 파일 가져오기/복사/동기화(Rsync 옵션 정리) Rsync? Remote Synchronization의 약자로 로컬 또는 원격지의 데이터를 동기화(가져오기)위한 유틸리티이자 프로토콜. 파일과 디렉터리를 가져올 수 있어(동기화) 백업 / 미러링 용도로 사용할 수 있다. (링크, 소유자, 권한 등 부가정보도 함께 복사가 가능하다.) 데이터를 압축해서 이동하고 변경된 파일만 복사하기 때문에 빠르고 효율적이다. => I/O 소모 최소화 lsyncd : 데몬으로 작동하며 변경점을 바로 반영하는 유틸리티 * rsync는 보통 CentOS에 기본으로 설치됨 => 없는경우 yum으로 설치! 기본 사용법 > rsync [option] [ 가져올 파일의 경로 ] [ 가져온 파일을 놓을 경로 ] # 기본 > rsync [option] 접속계정@원격지주소:/경로 [ 가져온.. 2020.04.10
- [ 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
- [ VM Ware ] 가상머신, 이미지 복사 / 복제 (Pro 버전 Clone 기능, Clone 기능 없이 복사하기 Clone을 통한 복사 * pro 버전은 clone 기능을 제공 1. VM Ware 열기 > VM > Manage > Clone 2. 다음 3. 다음 4. VM을 독립적으로 운영하기 위해선 full clone이 필요(원본만큼 HDD 용량 필요) > 선택 후 다음 5. VM 이름 / 경로 설정 디렉터리 자체를 복사(pro 버전이 아닌경우) 1. 복사할 가상머신 탭으로 이동 후 > Edit virtual machine settings 2. Options 탭으로 이동 > 우측에 Working directory 경로로 이동 => 해당 경로 가상머신이 있는 디렉터리이다. 3. 위 경로 디렉터리 복사 + 붙여넣기 4. VM웨어 상단 탭 > File > Open 5. 복붙한 경로의 VM 파일 열기 6. 가상머신 실행.. 2020.06.22
- [ CentOS ] Rsync 패스워드 없이 접속하기 Rsync Public Key? rsync는 ssh 프로토콜을 기반으로 많이 사용하는데 ssh는 보통 암호와 공개키 방식을 가장 많이 사용한다. rsync로 원격지에 접속하여 데이터를 동기화하기 위해서는 연결할 때 마다 패스워드를 입력해야한다는 번거로움이 있다. 공개키를 생성하여 원격지에 등록하면 암호입력 없이 원격지로 연결이 가능하다. 스케줄로 작업할 때나 동기화하여 백업 서버로 사용할 경우 등에 사용한다. 필요 패키지 > rsync > openssh-clients * 보통 기본으로 설치된다. 없으면 yum으로 설치! 1. RSA 알고리즘으로 키 생성 => 명령어 입력 후 [ Enter ] 로 넘어간다. (경로와 개인키 지정하는 것이지만 기본값으로 넘어간다.) > ssh-keygen -t rsa 2. .. 2020.04.20
- [ React Native ] 윈도우에서 리액트 네이티브 개발 환경 구성 - Expo-cli 1. expo-cli 설치 1.1 명령 프롬프트 실행(관리자 권한) 1.2 설치 > npm install expo-cli -global 2. 프로젝트 생성 2.1 프로젝트 생성(생성할 폴더로 이동한 뒤) > expo init [ 프로젝트명 ] 2.2 생성된 프로젝트 폴더로 이동 > cd [ 프로젝트명 ] 2.3 실행 > expo start 3. 실행 3.1 모바일에서 Expo 어플 설치 3.2 개발 PC와 모바일 기기 같은 네트워크로 잡기 3.3 QR 코드를 촬영하면 설치한 Expo 앱으로 연결된다. * VS Code로 Expo 프로젝트 연결 1) 비쥬얼스튜디오 코드 > 상단 File > Open Folder 2) 생성한 폴더 선택 3) VS Code 터미널창 열기 4) expo start ** 3번과 .. 2020.04.03
반응형