programmers.co.kr/learn/courses/30/lessons/42579?language=python3 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr dic : 장르별 재생 횟수가 저장된 딕셔너리 -> {'classic': 1450, 'pop': 3100} -> 정렬 후 [('pop', 3100), ('classic', 1450)] album : 장르별 노래의 재생된 횟수와 고유번호가 저장된 딕셔너리 -> {'classic': [[500, 0], [150, 2], [800, 3]], 'pop..
OOP 란? Object Oriented Programming의 약자 -> 객체 지향 프로그래밍 여러 개의 객체 단위로 나누어 작업하는 방식 객체 실생활에서 인식할 수 있는 사물 자바스크립트의 기본 타입 method(행위)와 property(속성)를 가진다. property는 key와 value로 구성 property의value가 함수일 경우 일반 함수와 구분하기 위해 메소드라고 부른다. ( 속성 = 필드 = property / 함수 = method ) 클래스와 인스턴스 1. class 특정 객체를 생성하기 위해 일반화된 형태로 정의하는 일종의 틀 2. 인스턴스 클래스에 따라 구현된 실체 실체화된 인스턴스는 메모리에 할당된다. 3. 인스턴스화 클래스를 바탕으로 객체를 실체화하면 인스턴스가 되며, 이 과정..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/ebTUfX/btqYTNWNshk/jb53dBUzPtpSKMdaq7Bm40/img.png)
git init : repository 생성 git status : 파일의 상태를 확인 git checkout : 브랜치 변경 실제 git에서는 브랜치를 지정하지만, 구현한 명령 동작은 지정한 repository를 사용한다는 의미. git add : workspace에서 staging area로 올리는 명령어. git update : 실제 git에는 존재하지 않는 명령어지만, 구현한 명령어에서는 파일이 수정된 것을 반영하기 위해 사용된다. git commit : 실제 git에서는 stage area에 올라간 Staged 파일들을 local repository에 커밋 메시지와 저장한다. 구현한 명령어는 local repository 역할을 하는 gitRepository라는 저장소에 커밋메시지와 함께 저장된..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bSn0NC/btqYZ5WTSon/Se8CITUsBuZ6yt8b6VTc1k/img.png)
잠시 AWS 서버 중지 시키고 재시작 했는데 서버 접속이 안됨.. 연결을 거부했습니다. ......... ......... 도메인 말고도 서버 켜고 접속해봤는데도 안되길래 도메인 연결하는 것부터 다시 시작해봤는데 계속 안됨.. 혹시 몰라서 리다이렉트 설정 다시 해봤더니 해결...!! sudo iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3000 구글링하고 이것저것 시도해봐도 해결이 안된다면 한번 시도해보길 !
1. 프로젝트 파일 생성하기 mkdir project_name cd project_name npm init -y 2. 필요한 폴더 생성하기 mkdir src mkdir dist mkdir public src : 소스 파일이 저장될 폴더 dist : 번들링된 파일이 저장될 폴더 public : 정적 파일이 저장될 폴더 3. 리액트 설치하기 npm install react react-dom react : 리액트 코어 react-dom : 리액트와 DOM을 연결 4. 바벨 설치하기 npm install @babel/core @babel/preset-react @babel/preset-env -D @babel/core : 바벨 코어 @babel/preset-react : JSX코드를 createElement 함..
programmers.co.kr/learn/courses/30/lessons/42862# 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번 programmers.co.kr def solution(n, lost, reserve): answer = 0 students = [1] * n for i in lost: students[i-1] -= 1 for i in reserve: students[i-1] += 1 for i in range(n): if students[i] == 0: if i != 0 and students[i-1] >= 2: stud..
programmers.co.kr/learn/courses/30/lessons/42748 코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr def solution(array, commands): answer = [] for i in range(len(commands)): i, j, k = commands[i][0], commands[i][1], commands[i][2] tmp = sorted(array[i-1:j]) answer.append(tmp[k-1]) return answer
programmers.co.kr/learn/courses/30/lessons/72410 코딩테스트 연습 - 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 programmers.co.kr import re def solution(new_id): # 1단계 answer = new_id.lower() # 2단계 answer = re.sub('[^0-9a-z\.\-\_]', '', answer) # 3단계 answer = re.sub('[.]+', '.', answer) # 4단계 if answer.startswith('.'): answer = answer[..