분류 전체보기
-
코딩테스트 연습> SUM, MAX, MIN> 최댓값 구하기SQL/Programmers 2020. 8. 11. 23:25
코딩테스트 연습 - 최댓값 구하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr 문제설명: 'ANIMAL_INS' 테이블에서(FROM) 가장 최근(MAX)에 들어온 동물의 시간(DATETIME)을 구하는 문제이다. 이때 출력하는 컬럼명도 문제 예시처럼 '시간' 이라고 지정할 수 있다. [1차 시도] SELECT MAX(DATETIME) AS '시간' FROM ANIMAL_INS; 풀이: 첫 줄의 SELECT문은 조회하고자 하는 정보를 ..
-
코딩테스트 연습> SELECT> 역순 정렬하기SQL/Programmers 2020. 8. 10. 08:23
코딩테스트 연습 - 역순 정렬하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr 문제설명: 'ANIMAL_INS' 테이블(FROM)에 들어있는 모든 동물의 이름(NAME)과 보호 시작일(DATETIME)을 ANIMAL_ID 역순(ORDER BY DESC)으로 조회하면 된다. [1차 시도] SELECT NAME, DATETIME FROM ANIMAL_INS ORDER BY ANIMAL_ID DESC; 풀이: 첫 줄의 SELECT문은 조회..
-
코딩테스트 연습> SELECT> 모든 레코드 조회하기SQL/Programmers 2020. 8. 9. 21:57
코딩테스트 연습 - 모든 레코드 조회하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr 문제설명: 'ANIMAL_INS' 테이블(FROM)에 들어있는 모든 동물 정보를 ANIMAL_ID 순(ORDER BY)으로 조회하면 된다. [1차 시도] SELECT * FROM ANIMAL_INS ORDER BY ANIMAL_ID; 풀이: 첫 줄의 SELECT * 는 조회하고자 하는 정보를 뜻하는데 *는 모든 정보를 다 조회하겠다는 의미다. 그 다..
-
Gitlab 새 리포지토리(repository) 프로젝트 만들기GIT/GITLAB 2020. 8. 4. 15:37
1. Gitlab에서 아래와 같이 새 프로젝트를 만들고 프로젝트 이름 설정 후 create project를 합니다. 2. 프로젝트 생성 후 오른쪽 clone버튼 하단의 Clone with HTTPS url의 오른쪽 버튼을 눌러 주소를 복사합니다. 3. 내 컴퓨터에서 원격저장소로 저장할 폴더를 연결하는 방법은 2가지가 있습니다. 3-1. 새로운 폴더를 생성하고 원격저장소에 이미 올라가있는 작업내용을 로컬(내 컴퓨터)로 옮겨오거나, 이제부터 새롭게 만들 파일들을 원격저장소로 올리는 방법 git이 설치되어 있다면, 바탕화면 아무 곳에서 오른쪽 마우스 클릭 후 git bash here로 창을 열고 아래 명령어를 입력합니다. $ git clone 이때, 이미 기존에 파일들이 올라간 repository에서 clon..
-
코딩테스트 연습> Summer/Winter Coding(~2018)> 예산ALGORITHM/Programmers 2020. 7. 26. 01:12
코딩테스트 연습 - 예산 S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했습니다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매해 줄 수는 �� programmers.co.kr 문제설명: d배열로 주어지는 예산들 중 합산했을 때 budget 범위를 넘지 않는 최대의 예산 개수를 알아내는 문제이다. 최대한 많은 종류의 예산을 선택해야하므로, 오름차순으로 정렬한 후 앞의 숫자부터 차례대로 보면서 budget이 넘지 않을 때까지 count를 해주면 될 것 같다. [1차 시도] import heapq def solution(d, budget): cnt = 0 heapq.heapify(d) while d: if budget - d[0] >=0..
-
코딩테스트 연습> 스택/큐> 쇠막대기ALGORITHM/Programmers 2020. 7. 24. 23:25
문제설명: 여는 괄호와 닫는 괄호로 이루어진 문자열이 주어지고, 여는 괄호 '('가 나올 때마다 막대기가 생성된다. 중간에 괄호과 완성되면, 즉 '()'이 만나게되면 레이저를 발사해 현재까지 생성된 막대기를 두 동강낸다. 이렇게 했을 때 누적된 막대기가 잘려나간 조각들의 총 합을 구하면 된다. [1차 시도] def solution(arrangement): ans = 0 ## 조각 개수 temp = 1 ## 막대기 개수 for a in range(1,len(arrangement)): if arrangement[a] == '(': temp+=1 else: if arrangement[a-1]=='(': temp-=1 ans+=temp else: ## '))' temp-=1 ans+=1 return ans 풀이..
-
코딩테스트 연습> 탐욕법(Greedy)> 큰 수 만들기ALGORITHM/Programmers 2020. 7. 22. 22:25
코딩테스트 연습 - 큰 수 만들기 programmers.co.kr 문제설명: number로 주어지는 숫자들 중 k개 만큼 제거 후 남는 숫자들로 가장 큰 수를 만들어야 한다. 단 주의할 점은, 숫자들의 순서를 섞으면 안된다. 즉 앞에서부터 차례대로 제거하며 가장 큰수를 return 해야 한다. [1차 시도] def solution(number, k): number = list(number) cur = 1 ans_len = len(number) while len(number)!= ans_len-k and cur!= len(number): if int(number[cur-1]) < int(number[cur]): h = cur while h!=0 and int(number[h-1]) < int(number[..
-
코딩테스트 연습> 스택/큐> 다리를 지나는 트럭ALGORITHM/Programmers 2020. 7. 18. 18:34
코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 트럭은 1초에 1만큼 움직이며, 다리 길이�� programmers.co.kr 문제설명: 다리를 지나려고 대기중인 트럭들의 배열인 truck_weights가 주어지고, 다리가 지탱할 수 있는 트럭의 무게 weight가 주어진다. 그리고 다리의 길이는 bridge_length로 주어지는데 트럭이 움직이는 이동거리라고 볼 수 있다. 다리위의 트럭의 무게를 보면서 트럭이 다리를 지날 수 있는경우와 앞의 트럭들이 다 빠질 때까지 기달리는 로직을 적절히 짜서 문제를 해결할 수 있다. 그러면서 다리를 건너는 트럭들이 한칸씩 움직이..