[프로그래머스] Lv.3 정수 삼각형 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/43105 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 출처 : programmers 1층부터 n층까지 내려가는 경로중 숫자의 합이 가장 큰 경우를 찾으면 된다.아래칸으로 이동시 대각선 왼쪽이나 대각선 오른쪽으로만 이동 가능하다.ex) 7 -> 3 or 7 -> 8  풀이 방법레벨과 달리 생각보다 간단하다. dp로 풀면 된다.맨 아래층 값들을 dp에 저장한 뒤 dp[0][0]이 될 때까지 올라간다.예를 들어 위 이미지를 예시로 들면 현재 삼각형 크기가 5*5이므로 아래와 같이 dp[삼각형 세로길이]..
[프로그래머스] Lv.2 하노이의 탑 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/12946 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  대표적인 재귀문제로 3개의 막대기둥 (A,B,C)가 주어지고 A의 막대기둥에 꽂힌 원판들을 B 막대기둥까지 옮기면 된다.이때 조건이 주어진다.한번에 하나의 원판만 옮길 수 있다.큰 원판이 작은 원판 위에 있어서는 안 된다.A기둥에서 B기둥까지 모든 원판을 옮기는 최소 가짓수를 구해보자. 문제 이해 처음에 이 문제를 봤을 때는 재귀의 개념이 쉽게 들어오지 않았다. 원판을 재귀적으로 옮기는건 알겠는데 구체적으로 어떻게 옮기는 거지..? 이걸 어떻..
[프로그래머스] Lv.2 카펫 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/42842 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 카펫은 테두리는 갈색, 중앙은 노란색으로 구성되어 있다.brown은 최소 8 최대 5,000이하의 자연수yellow는 1이상 2,000,000이하의 자연수카펫 가로길이 >=  카펫 세로길이ex) brown = 10, yellow = 2인 경우 카펫의 크기는 [4, 3]이 된다.     *****     *&&*     ***** 즉, brown격자의 개수와 yellow격자의 개수가 주어지면 카펫의 가로, 세로 길이를 구하면 된다. 풀이 방법완전..
[프로그래머스] Lv.2 귤 고르기 c++
·
Algorithm/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/138476 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 수확한 귤 중 k개를 골라야하며 이때 귤의 크기는 최대한 일정해야한다.즉, 귤의 크기 종류를 최소화 하면서 k개의 귤을 골라내는것이 목표다. 예를 들어, 8개의 귤을 수확했고  수확한 귤의 크기가 다음과 같다.[1, 3, 2, 5, 4 ,5, 2, 3]이때, 6개의 귤을 판매하고 싶다면 크기 1과 4를 제외한 [2 ,3 ,2 ,5, 5, 3] 귤을 상자에 담으면 귤의 크기 종류는 [2, 3, 5]로 총 3가지가 되어 최소가 된다. 풀이 방법총..
[프로그래머스] Lv.0 배열 회전시키기 c++
·
Algorithm/Programmers
문제설명 정수가 담긴 배열 numbers와 문자열 direction가 매개변수로 주어집니다. 배열 numbers의 원소를 direction방향으로 한 칸씩 회전시킨 배열을 return하도록 solution 함수를 완성해주세요.제안사항3 direction은 "left" or "right" #include #include using namespace std;vector solution(vector numbers, string direction) { vector answer; //left와 right 두가지 경우의 if문을 따로 만들었다. if(direction == "left") { for(int i=0; i  vector를 사용할 줄 알아야 하는 문제v,push_b..