목록알고리즘 (547)
N
https://programmers.co.kr/learn/courses/30/lessons/72413 코딩테스트 연습 - 합승 택시 요금 6 4 6 2 [[4, 1, 10], [3, 5, 24], [5, 6, 2], [3, 1, 41], [5, 1, 24], [4, 6, 50], [2, 4, 66], [2, 3, 22], [1, 6, 25]] 82 7 3 4 1 [[5, 7, 9], [4, 6, 4], [3, 6, 1], [3, 2, 3], [2, 1, 6]] 14 6 4 5 6 [[2,6,6], [6,3,7], [4,6,7], [6,5,11], [2,5,12], [5,3,20], [2,4 programmers.co.kr 플로이드 와샬을 이용. 우선 n + 1 * n + 1의 크기만큼 배열을 선언하여, ..
22. Generate Parentheses Medium 10118403Add to ListShare Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses. Example 1: Input: n = 3 Output: ["((()))","(()())","(())()","()(())","()()()"] Example 2: Input: n = 1 Output: ["()"] Constraints: 1 n || right > n){ return; } else if(left === n && right === n){ answer.add(string); return; } dfs(n, left..
https://programmers.co.kr/learn/courses/30/lessons/86051 코딩테스트 연습 - 없는 숫자 더하기 0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr 0 ~ 9의 숫자의 총합은 45다. numbers 벡터에서 없는 숫자의 총합이기 때문에, numbers의 원소를 빼면 답이다. #include #include using namespace std; int solution(vector numbers) { int answer = 45; for(int i = 0; i <..
https://programmers.co.kr/learn/courses/30/lessons/86048 코딩테스트 연습 - 7주차_입실 퇴실 사회적 거리두기를 위해 회의실에 출입할 때 명부에 이름을 적어야 합니다. 입실과 퇴실이 동시에 이뤄지는 경우는 없으며, 입실 시각과 퇴실 시각은 따로 기록하지 않습니다. 오늘 회의실에는 programmers.co.kr map을 활용. 변수 설명 n = enter의 크기(사람 수) leaveIndex = leave 벡터를 순회할 때 지금까지 순회한 인덱스를 저장. answer = 정답 저장 벡터 m = 입실과 퇴실을 확인하는 map cnt = 퇴실할 사람이 지금까지 반드시 만난 사람의 수 enter 벡터를 순회하면서 입실한 사람은 m에서 true로 바꿔주도록 한다. 사..
134. Gas Station There are n gas stations along a circular route, where the amount of gas at the ith station is gas[i]. You have a car with an unlimited gas tank and it costs cost[i] of gas to travel from the ith station to its next (i + 1)th station. You begin the journey with an empty tank at one of the gas stations. Given two integer arrays gas and cost, return the starting gas station's inde..
55. Jump Game You are given an integer array nums. You are initially positioned at the array's first index, and each element in the array represents your maximum jump length at that position. Return true if you can reach the last index, or false otherwise. Example 1: Input: nums = [2,3,1,1,4] Output: true Explanation: Jump 1 step from index 0 to 1, then 3 steps to the last index. Example 2: Inpu..
561. Array Partition I Given an integer array nums of 2n integers, group these integers into n pairs (a1, b1), (a2, b2), ..., (an, bn) such that the sum of min(ai, bi) for all i is maximized. Return the maximized sum. Example 1: Input: nums = [1,4,3,2] Output: 4 Explanation: All possible pairings (ignoring the ordering of elements) are: 1. (1, 4), (2, 3) -> min(1, 4) + min(2, 3) = 1 + 2 = 3 2. (..
https://programmers.co.kr/learn/courses/30/lessons/86491 코딩테스트 연습 - 8주차 [[10, 7], [12, 3], [8, 15], [14, 7], [5, 15]] 120 [[14, 4], [19, 6], [6, 16], [18, 7], [7, 11]] 133 programmers.co.kr 주어진 sizes의 원소들을 오름차순으로 정렬한 후, w와 h의 최대값을 구해 곱하면 된다. #include #include #include using namespace std; int solution(vector sizes) { int wMax = 0; int hMax = 0; for(int i = 0; i < sizes.size(); i++){ sort(sizes[i..