Coding Test/알고리즘 실전
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDUhn4%2FbtsJgFR3su9%2FxATk2Nk9yPwWK6o64YO51K%2Fimg.png)
[MYSQL] Subquery, CTE
✔ Subquery, CTE많이 주문한 테이블 찾기[SolveSql find-tables-with-high-bill]/*SELECT : 모든 컬럼FROM : tips 테이블WHERE : 식사 금액이 테이블 당 평균 식사 금액보다 더 많은 경우*/SELECT *FROM tipsWHERE total_bill > ( SELECT AVG(total_bill) FROM tips )
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTVatR%2FbtsIWFLRTQ4%2FmygCcATDVl1SFiXHbQE1p1%2Fimg.png)
[1967] 트리의 지름
✔ 트리의 지름[백준 1967]코드 구현하기/* * 문제 분석하기 * : DFS 탐색을 통해 루트 노드에서부터 가장 먼 노드를 찾은 후, 그 노드로부터 가장 먼 노드를 찾아 지름을 찾도록 함 *//* * 손으로 풀어보기 * 1. DFS 탐색을 통해 루트 노드에서부터 가장 먼 노드 찾기 * 2. 그 노드로부터 가장 먼 노드를 찾아 지름 출력 *//* * 1967) 트리의_지름 */public class Main { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); static int n; static ArrayList[] tree; // tree(트리 데이터 저장 인접 리스트) sta..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb55NOF%2FbtsIUCa9rOT%2FwisTdzycvtpYW1kbhxx4Dk%2Fimg.png)
[MYSQL] SolveSql String, Date
✔ String, Date최근 올림픽이 개최된 도시[SolveSql olympic-cities]/* SELECT : 올림픽 개최년도, 올림픽 개최도시 FROM : games 테이블 WHERE : 2000년 이후 올림픽이 개최된 도시 ORDER BY : 최근에 개최된 도시부터 내림차순 정렬*/SELECT year, UPPER(SUBSTR(city, 1, 3)) AS 'city'FROM gamesWHERE year >= 2000ORDER BY year DESC
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbY9X4a%2FbtsItP8ZvJH%2FW6IbLCwYcXZys6ln1giAKK%2Fimg.png)
[MYSQL] SolveSql Aggregate
✔ Aggregate데이터 그룹으로 묶기[SolveSql group-by]/*SELECT : 콰르텟, x 평균, x 표본 분산, y 평균, y 표본 분산FROM : points 테이블GROUP BY : quartet 컬럼*/SELECT quartet, ROUND(AVG(x), 2) AS 'x_mean', ROUND(VARIANCE(x), 2) AS 'x_var', ROUND(AVG(y), 2) AS 'y_mean', ROUND(VARIANCE(y), 2) AS 'y_var'FROM pointsGROUP BY quartet우리 플랫폼에 정착한 판매자 1[SolveSql settled-sellers-1]/* SELECT : 판매자 ID, 판매자가 판매한 주문 건수 FROM : olist_orde..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Flq7zI%2FbtsIsxHn3ty%2FnLNH77V4FVOkYJUXVsYBU1%2Fimg.png)
[9489] 사촌
✔ 사촌[백준 9489]코드 구현하기/* * 문제 분석하기 * : k와 조부모는 같으면서 부모는 다른 노드들의 개수를 찾도록 함 *//* * 손으로 풀어보기 * 1. 각 노드에 따른 부모 노드의 인덱스 위치를 저장하도록 함 * 2. k와 조부모는 같으면서 부모는 다른 노드들의 개수를 찾도록 함 * 3. 사촌의 수를 출력 * 4. n과 k가 둘 다 0일 경우 종료 *//* * 9489) 사촌 */public class Main { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); static int n, k; static int[] node; // node(노드의 정보를 저장하는 배열) ..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcE2jur%2FbtsIjJWJdAn%2FjhMEsOv1W4NIowh6OTrifK%2Fimg.png)
[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 : 매출 날짜 기..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcGOFch%2FbtsIlVWFbW1%2FvKKlNOtqPiqAvqiSMnCGRk%2Fimg.png)
[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..