알고리즘 (233) 썸네일형 리스트형 프로그래머스 17678 셔틀버스 자바스크립트 풀이 난이도 : Lv. 3풀이일 : 2501212https://school.programmers.co.kr/learn/courses/30/lessons/17678 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제아이디어전체 버스 시간을 숫자로 변환해서 쉽게 비교하자각 버스 시간에 버스를 타고 간 크루의 인덱스를 저장하자막차에 자리가 있다면, 막차 시간에 도착하자막차에 자리가 없다면 마지막 사람보다 1분 먼저 도착하자코드function solution(n, t, m, timetable) { var answer = '' var bus = 0, crew = 0, num = 0, now = 540 - t.. 프로그래머스 17678 셔틀버스 자바 풀이 난이도 : Lv. 3풀이일 : 2501201https://school.programmers.co.kr/learn/courses/30/lessons/17678 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제아이디어전체 버스 시간을 숫자로 변환해서 쉽게 비교하자각 버스 시간에 버스를 타고 간 크루의 인덱스를 저장하자막차에 자리가 있다면, 막차 시간에 도착하자막차에 자리가 없다면 마지막 사람보다 1분 먼저 도착하자코드import java.util.Arrays;class Solution { public String solution(int n, int t, int m, String[] timetable).. 프로그래머스 17678 셔틀버스 파이썬 풀이 난이도 : Lv. 3풀이일 : 2501201https://school.programmers.co.kr/learn/courses/30/lessons/17678 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제아이디어전체 버스 시간을 숫자로 변환해서 쉽게 비교하자각 버스 시간에 버스를 타고 간 크루의 인덱스를 저장하자막차에 자리가 있다면, 막차 시간에 도착하자막차에 자리가 없다면 마지막 사람보다 1분 먼저 도착하자코드def solution(n, t, m, timetable): bus, now = 0, 540 - t crew = 0 # 인덱스로 몇 번째 도착한 크루 버스 탔는지 기록 last.. 프로그래머스 12927 야근 지수 파이썬 풀이 난이도 : Lv. 3풀이일 : 2501201https://school.programmers.co.kr/learn/courses/30/lessons/12927 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제아이디어제일 큰 수 -1 을 n번 동안 반복한다.반영된 수들의 제곱을 answer에 더한다.코드import heapqdef solution(n, works): answer = 0 queue = [] for w in works: # 각 작업량 heap 추가 heapq.heappush(queue, -w) for i in range(n): # 제일 큰 값 -.. 프로그래머스 42885 구명보트 자바스크립트 풀이 난이도 : Lv. 2풀이일 : 2501164https://school.programmers.co.kr/learn/courses/30/lessons/42885 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제아이디어people을 정렬한다.가장 가벼운 사람과 가장 무거운 사람을 짝지어 두 사람 무게의 합이 무게 제한을 넘어가는지 확인한다.무게 제한을 초과한다면, 무거운 사람은 혼자 타야한다. 현재 가벼운 사람과 다음 무거운 사람을 짝지어 비교하고 구명 보트 수를 한 개 더한다.무게 제한을 초과하지 않는다면, 현재 가벼운 사람과 현재 무거운 사람이 함께 보트를 탄다. 다음 가벼운 사람과 다음 무거운 사람 짝.. 프로그래머스 42885 구명보트 자바 풀이 난이도 : Lv. 2풀이일 : 2501164https://school.programmers.co.kr/learn/courses/30/lessons/42885 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제아이디어people을 정렬한다.가장 가벼운 사람과 가장 무거운 사람을 짝지어 두 사람 무게의 합이 무게 제한을 넘어가는지 확인한다.무게 제한을 초과한다면, 무거운 사람은 혼자 타야한다. 현재 가벼운 사람과 다음 무거운 사람을 짝지어 비교하고 구명 보트 수를 한 개 더한다.무게 제한을 초과하지 않는다면, 현재 가벼운 사람과 현재 무거운 사람이 함께 보트를 탄다. 다음 가벼운 사람과 다음 무거운 사람 짝.. 프로그래머스 42885 구명보트 파이썬 풀이 난이도 : Lv. 2풀이일 : 2501164https://school.programmers.co.kr/learn/courses/30/lessons/42885 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제아이디어people을 정렬한다.가장 가벼운 사람과 가장 무거운 사람을 짝지어 두 사람 무게의 합이 무게 제한을 넘어가는지 확인한다.무게 제한을 초과한다면, 무거운 사람은 혼자 타야한다. 현재 가벼운 사람과 다음 무거운 사람을 짝지어 비교하고 구명 보트 수를 한 개 더한다.무게 제한을 초과하지 않는다면, 현재 가벼운 사람과 현재 무거운 사람이 함께 보트를 탄다. 다음 가벼운 사람과 다음 무거운 사람 짝.. 프로그래머스 42890 후보키 파이썬 풀이 난이도 : Lv. 2풀이일 : 2501061https://school.programmers.co.kr/learn/courses/30/lessons/42890 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제아이디어주어진 입력에서 만들 수 있는 모든 컬럼 조합 추출 ([0], [1], [0, 1])각 릴레이션의 저장된 컬럼들을 묶어 set에 저장 (("100"), ("200"))set의 길이와 릴레이션 총 길이가 같다면, 후보키가 될 수 있는지 검사이미 저장된 후보키가 현재 구한 컬럼조합의 부분집합에 해당하는지 확인 후 후보키 여부 결정후보키의 개수 출력풀이 코드def solution(relation):.. 프로그래머스 12907 거스름돈 자바 풀이 난이도 : Lv. 3풀이일 : 2412275https://school.programmers.co.kr/learn/courses/30/lessons/12907 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제아이디어각 동전에 대해 해당 동전의 가격부터 궁금한 금액까지 해당 동전으로 만들 수 있는 개수 추가코드class Solution { public int solution(int n, int[] money) { int answer = 0; int[] dp = new int[n + 1]; dp[0] = 1; for (int coin : .. 프로그래머스 12907 거스름돈 자바스크립트 풀이 난이도 : Lv. 3풀이일 : 2412275https://school.programmers.co.kr/learn/courses/30/lessons/12907 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제아이디어각 동전에 대해 해당 동전의 가격부터 궁금한 금액까지 해당 동전으로 만들 수 있는 개수 추가코드function solution(n, money) { var answer = 0 var dp = new Array(n + 1).fill(0) dp[0] = 1 for (coin of money) { for (let i = coin; i dp 배열은 구해야할 수.. 프로그래머스 12907 거스름돈 파이썬 풀이 난이도 : Lv. 3풀이일 : 2412275https://school.programmers.co.kr/learn/courses/30/lessons/12907 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제아이디어각 동전에 대해 해당 동전의 가격부터 궁금한 금액까지 해당 동전으로 만들 수 있는 개수 추가코드def solution(n, money): answer = 0 dp = [0] * (n + 1) dp[0] = 1 for coin in money: for i in range(coin, n + 1): dp[i] += dp[i - coin] .. 프로그래머스 42747 H-Index 자바스크립트 풀이 난이도 : Lv. 2풀이일 : 2412242https://school.programmers.co.kr/learn/courses/30/lessons/42747 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제아이디어citations를 내림차순으로 정렬한다.인덱스 0부터 시작해서 인덱스 + 1이 citations[인덱스] 보다 크지 않다면 숫자를 세고 다음 논문을 확인한다.코드function solution(citations) { let idx = 0 citations.sort((a, b) => b - a) // citations.sort().reverse() while (id.. 프로그래머스 42747 H-Index 파이썬 풀이 난이도 : Lv. 2풀이일 : 2412242https://school.programmers.co.kr/learn/courses/30/lessons/42747 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제아이디어citations를 내림차순으로 정렬한다.인덱스 0부터 시작해서 인덱스 + 1이 citations[인덱스] 보다 크지 않다면 숫자를 세고 다음 논문을 확인한다.코드def solution(citations): idx = 0 citations.sort(reverse=True) while idx 프로그래머스 12939 최댓값과 최솟값 자바스크립트 풀이 난이도 : Lv. 2풀이일 : 2412242https://school.programmers.co.kr/learn/courses/30/lessons/12939 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제풀이function solution(s) { let nums = s.split(' ').map(num => Number(num)) return `${Math.min(...nums)} ${Math.max(...nums)}`;}nums : 주어진 문자열 s를 공백을 기준으로 분할한 뒤, 각 요소를 숫자로 변환해 저장하는 배열nums의 최소값과 최댓값을 문제 요구사항 모양으로 반환제출 결.. 프로그래머스 17682 다트 게임 자바스크립트 풀이 난이도 : Lv. 1풀이일 : 2412242https://school.programmers.co.kr/learn/courses/30/lessons/17682 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제풀이 코드function solution(dartResult) { let answer = [] nums = dartResult.replaceAll('10', 'X') bonus = {'S': 1, 'D': 2, 'T': 3} for (n of nums) { if (n in bonus) { answer[answer.length - 1] **=.. 프로그래머스 86491 최소직사각형 자바스크립트 풀이 난이도 : Lv. 1풀이일 : 2412242https://school.programmers.co.kr/learn/courses/30/lessons/86491 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제풀이 코드function solution(sizes) { let garo = 0, sero = 0 let small, large sizes.forEach((s) => { small = s[0] > s[1] ? s[1] : s[0] large = s[0] > s[1] ? s[0] : s[1] garo = small > garo ? small .. 프로그래머스 86491 최소직사각형 자바 풀이 난이도 : Lv. 1풀이일 : 2412242https://school.programmers.co.kr/learn/courses/30/lessons/86491 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제풀이 코드import java.util.Arrays;class Solution { public int solution(int[][] sizes) { int garo = 0, sero = 0; for (int[] s : sizes) { Arrays.sort(s); if (s[0] > garo) { .. 프로그래머스 86491 최소직사각형 파이썬 풀이 난이도 : Lv. 1풀이일 : 2412242https://school.programmers.co.kr/learn/courses/30/lessons/86491 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제풀이 코드def solution(sizes): for s in sizes: s.sort() answer = max(sizes)[0] * max(sizes, key=lambda x: x[1])[1] return answers.sort : 돌려서 수납하는게 나은 명함들을 처리하기 위해 정렬max(sizes)[0] : 명함 가로 길이 중 가장 큰 값max(.. 프로그래머스 87946 피로도 자바스크립트 풀이 난이도 : Lv. 2풀이일 : 2412242https://school.programmers.co.kr/learn/courses/30/lessons/87946?language=python3 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제풀이 코드function solution(k, dungeons) { let answer = -1 let visited = new Array(dungeons.length).fill(false) function DFS(hp, depth) { if (answer = dungeons[i][0]) { visited[i.. 프로그래머스 87946 피로도 자바 풀이 난이도 : Lv. 2풀이일 : 2412242https://school.programmers.co.kr/learn/courses/30/lessons/87946?language=python3 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제풀이 코드class Solution { int answer = -1; boolean[] visited; public int solution(int k, int[][] dungeons) { visited = new boolean[dungeons.length]; DFS(k, 0, dungeons); .. 이전 1 2 3 4 ··· 12 다음