[프로그래머스 알고리즘 고득점 Kit][동적계획법(Dynamic Programming)][Java] 사칙연산
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/1843 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 1. 틀린코드작은 영역부터 잘라서 왼쪽의 최대 최소, 오른쪽 최대 최소를 이용해 특정 영역의 최댓값을 구한다.간격이 가장 작은 2부터 0~0 최대 최소 0~2 최대 최소 2~4 ...를 찾아가고간격이 커지면서 0~4 4~8 .. 이렇게 범위를 늘려간다.그렇게 되면 N^3의 시간복잡도가 나오는데 시간초과가 떴다.복잡도를 줄이는 건 도저히 모르겠어서 의심되는 곳을 바꿔보기로 했다.class Solution { public int solution(St..
[프로그래머스 알고리즘 고득점 Kit][그리디][Java] 체육복
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/42862 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr지금 나는 2벌을 가지고 있고내 왼쪽이나 오른쪽에 한벌도 없다면 빌려준다.모든 사람에 대해서 체육복을 왼쪽 기준을 먼저 다 체크해준다.모든 사람을 왼쪽부터 왼쪽 친구 먼저 기준으로 둔 이유는 0 2 0 2 이렇게 있다면 0 1 1 2 이런 상황이 일어날 수 있기때문에 왼쪽 사람부터 왼쪽 친구에게 먼저인 방향을 정하고 진행했다.반대로 오른쪽 사람부터 오른쪽 친구에게 먼저인 방향으로 풀어도 된다.양 끝점 배열의 인덱스를 넘어가지 않게 하기위해 분리했더니 좀..
[프로그래머스][MySQL] 특정 옵션이 포함된 자동차 리스트 구하기
·
데이터베이스/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/157343 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr SELECT CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONSFROM CAR_RENTAL_COMPANY_CARWHERE OPTIONS LIKE '%네비게이션%'ORDER BY CAR_ID DESC
[프로그래머스][MySQL] 평균 일일 대여
·
데이터베이스/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/151136 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr SELECT ROUND(AVG(DAILY_FEE)) AS AVERAGE_FEEFROM CAR_RENTAL_COMPANY_CARWHERE CAR_TYPE = 'SUV'ROUND( 값, 소수 몇번째 자리까지 남기고 반올림?)ROUND(11.125) = ROUND(11.123, 0) = 11ROUND(11.125, 1) = 11.1ROUND(11.125, 2) = 11.13AVG(컬럼) = NULL을 제외한 값들의 합 / NULL을 제외한 값들의 개수
[프로그래머스 알고리즘 고득점 Kit][정렬][Java] 가장 큰 수
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/42746 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 2개의 문자열을 사전순 역으로 하면아래처럼 쉽게 할 수 있다. 길이가 달라도 2개를 이어 붙여서 판단하면 간단하게 할 수 있다.그렇게 정렬하면 맨앞에 0이 오는 경우를 제외하고는 이어 붙여서 반환하면된다. import java.util.*;class Solution { public String solution(int[] numbers) { String[] numStr = new String[numbers.length]; f..
[프로그래머스 알고리즘 고득점 Kit][깊이/너비 우선 탐색(DFS/BFS)][Java] 아이템 줍기
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/87694 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 초기에 메서드도 분리하고 깔끔하게 쓰려고 분리할 거 다하다가복잡해지고... 디버깅도 쉽지 않았다.1. 복잡한 코드일단 메인 아이디어는 주어진 사각형의 테두리를 남겨두고 bfs로 탐색하면서 거리를 업데이트 해주는 것이다.주의했어야하는 부분은 expandedCordinate 메서드 위 주석에 나온 것처럼11111111 이렇게 주어진 사각형 내부 공백이 없어서 테두리만 남길 수 없었기에스케일을 키우는 작업을 했어야했습니다.import java.util.*;c..