Coding Test

자바를 사용한 코딩 테스트
Coding Test/알고리즘 실전

[MYSQL] SolveSql JOIN, UNION

✔ JOIN, UNION두 테이블 결합하기[SolveSql join]/* SELECT : 선수 ID FROM : events, records 테이블 WHERE : 종목 이름이 Golf */SELECT DISTINCT R.athlete_idFROM events E JOIN records R ON E.id = R.event_idWHERE E.sport = 'Golf'쇼핑몰의 일일 매출액[SolveSql olist-daily-revenue]/* SELECT : 매출 날짜와 해당 날짜의 매출액 FROM : olist_orders_dataset, olist_order_payments_dataset 테이블 WHERE : 2018년 1월 1일 이후 GROUP BY : 날짜 별 ORDER BY : 매출 날짜 기..

Coding Test/알고리즘 실전

[2504] 괄호의 값

✔ 괄호의 값[백준 2504]코드 구현하기/* * 문제 분석하기 * : 분배법칙을 사용하여 구현하도록 함 * (()[[]])([])는 2 * (2 + (3 * 3)) + 2 * 3이며 * '(' temp = 1 * 2 = 2, answer = 0 * '(' temp = 2 * 2 = 4, answer = 0 * ')' temp = 4 / 2 = 2, answer = 0 + 4 = 4 * '[' temp = 2 * 3 = 6, answer = 4 * '[' temp = 6 * 3 = 18, answer = 4 * ']' answer = 4 + 18 = 22, temp = 18 / 3 = 6 * ']' temp = 6 / 3 = 2, answer = 22 * ')' temp..

Coding Test/알고리즘 실전

[MYSQL] SolveSql SELECT

✔ SELECT모든 데이터 조회하기[SolveSql select-all]/* SELECT : 모든 데이터 FROM : points 테이블*/SELECT *FROM points일부 데이터 조회하기[SolveSql select-where]/* SELECT : 데이터 FROM : points 테이블 WHERE : quartet 컬럼의 값이 I*/SELECT *FROM pointsWHERE quartet = 'I'데이터 정렬하기[SolveSql order-by]/* SELECT : 데이터 FROM : points 테이블 WHERE : quartet 컬럼의 값이 I ORDER BY : y 컬럼의 값을 기준으로 오름차순 정렬*/SELECT *FROM pointsWHERE quartet = 'I'ORD..

Coding Test/알고리즘 실전

[21944] 문제 추천 시스템 Version 2

✔ 문제 추천 시스템 Version 2[백준 21944]코드 구현하기/* * 문제 분석하기 * : 추천 문제 리스트를 TreeSet에 저장한 후, 명령에 따라 문제를 추천, 추가, 제거하도록 함 * 이를 위해 TreeSet의 last(), first(), ceiling(), lower() 메소드를 사용하도록 하며 * 각 알고리즘인 G에 대해서는 각 서브트리를 만들어서 알고리즘 별로 정렬해주도록 함 *//* * 손으로 풀어보기 * 1. recommend G x일 경우, * TresSet에 있는 문제들을 알고리즘 G에 따라서 분리하여 서브트리를 만든 후 TreeSet의 last(), first() 메소드를 사용해 문제 번호를 출력 * 2. recommend2 x일 경우, * Tre..

Coding Test/알고리즘 실전

[14391] 종이 조각

✔ 종이 조각[백준 14391]코드 구현하기/* * 문제 분석하기 * : 현재의 위치에서 자기 자신과 가로 칸을 추가해 자르거나, * 자기 자신과 세로 칸을 추가해 자르거나 * 둘 다 추가하지 않고 자기 자신만 자르는 것을 반복하여 완전 탐색하며 * 얻을 수 있는 가장 큰 점수를 구하도록 함 *//* * 손으로 풀어보기 * 1. 종이 조각의 크기에 따라 종이 조각의 수를 저장 * 2. 현재 위치의 종이 조각을 이미 사용했을 경우 넘어가도록 함 * 3. 현재 위치의 종이 조각을 사용하지 않았을 경우, * 자기 자신만 잘라 조각을 만들거나, * 자기 자신과 가로 조각을 붙여 조각을 만들거나, * 자기 자신과 세로 조각을 붙여 조각을 만드는 것을 반복하여 조각의 합을 최대로 ..

Coding Test/알고리즘 실전

[16637] 괄호 추가하기

✔ 괄호 추가하기[백준 16637]코드 구현하기/* * 문제 분석하기 * : 괄호 안에 하나의 연산자만 들어가도록 하여 식의 결과의 최댓값을 구해야하므로 * 이전까지의 결과 값에 이번 연산을 할 때 괄호를 넣은 것과 넣지 않은 것의 결과를 구하도록 반복하여 최댓값을 구하도록 함 *//* * 손으로 풀어보기 * 1. 괄호를 넣지 않을 경우 이전까지의 계산 값과 현재의 수에 대해 계산하도록 함 * 2. 괄호를 넣을 경우 현재의 수와 다음 수에 대해 먼저 계산한 후 이를 이전까지의 계산 값과 계산하도록 함 * 3. 모든 연산자를 살펴봤다면 식의 결과의 최댓값을 갱신하도록 함 * 4. 이를 반복하여 괄호를 넣거나 넣지 않는 경우에 대해 모두 반복하여 최댓값을 찾아 출력함 *//* * 16637) 괄호_추..

Coding Test/알고리즘 실전

[14500] 테트로미노

✔ 테트로미노[백준 14500]코드 구현하기/* * 문제 분석하기 * : 각 테트로미노를 회전, 대칭시키며 종이 위에 올린 후, 가장 큰 수들의 합을 찾는 것이므로 * 한 칸을 정한 후, 이 위치에서 상하좌우로 탐색하며 테트로미노의 크기인 4만큼이 되었을 때 수를 갱신하도록 함 * 이때 보라색 테트로미노를 제외하고 나머지 테트로미노는 상하좌우 탐색을 통해 만들 수 있지만 * 보라색 테트로미노는 탐색 시 2번째 칸에서 3번째 칸으로 이동하는 것이 아니라 2번째 칸에서 다시 한 번 탐색을 하도록 함 * * 파란색 : 우우우 (좌좌좌, 하하하, 상상상 ...) * 노란색 : 하우상 (우하좌, 상우하, 좌하우 ...) * 주황색 : 하하우 (우우상, 우우하, 좌좌하, 좌좌상, 상상좌,..

Coding Test/알고리즘 실전

[21315] 카드 섞기

✔ 카드 섞기[백준 212315]코드 구현하기/* * 문제 분석하기 * : 초기 상태부터 시작해 K가 될 수 있는 수를 두 개 뽑아 완전 탐색하여 알맞는 K를 찾도록 함 * 예) 초기 상태 -> 1 2 3 4 5 * 4개의 카드를 더미의 맨 위에 올림 -> 2 3 4 5 1 * 2 4, 5, 2, 3, 1 * i = 3일 때, 직전에 맨 위에 올린 카드(4, 5) 중에서 밑에서 1개의 카드 더미를 맨 위에 올림 -> 5, 4, 2, 3, 1 *//* * 손으로 풀어보기 * 1. K가 될 두 수를 뽑도록 함 * 2. K에 따라 2번의 (2, K) 섞기를 하여 결과를 찾도록 함 * 2^K개의 카드를 더미의 맨 위에 올린 후, 그 중에서 2^(K - i + 1)개의 카드를 더미의 ..

김깅긍
'Coding Test' 카테고리의 글 목록 (2 Page)