c++
-
스택/큐 > 다리를 지나는 트럭스택(Stack) 2018. 9. 29. 20:52
https://programmers.co.kr/learn/courses/30/lessons/42583 1. 문제 2. 알고리즘키워드 - 스택 3. 코드 12345678910111213141516171819202122232425262728293031323334353637383940414243#include #include #include using namespace std; int solution(int bridge_length, int weight, vector truck_weights) { queue q; int sum, count; sum = count = 0; for(int i=0; i weight) { q.push(0); count++; } else { q.push(d); count++; sum ..
-
백준 10799번: 쇠막대기스택(Stack) 2018. 9. 29. 19:19
https://www.acmicpc.net/problem/10799 1. 문제 2. 알고리즘키워드 - 스택 3. 코드 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960#include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define MAX_SIZE 100#define INF 0x7fffffff#define CENDL "\n"#define ll lon..
-
스택/큐 > 주식가격프로그래머스(Programmers) 2018. 9. 26. 21:47
https://programmers.co.kr/learn/courses/30/lessons/42584 1. 문제 2. 알고리즘키워드 - 구현 3. 코드 12345678910111213141516171819202122232425262728293031323334// 그지 같은 풀이#include #include using namespace std; vector solution(vector prices) { vector answer; const int size = prices.size(); for (int i = 0; i
-
스택/큐 > 쇠막대기프로그래머스(Programmers) 2018. 9. 26. 21:23
https://programmers.co.kr/learn/courses/30/lessons/42585 1. 문제 2. 알고리즘키워드 - 스택 3. 코드 12345678910111213141516171819202122232425262728293031#include #include #include using namespace std; int solution(string arrangement) { int answer = 0; const int size = arrangement.size(); stack s; char before = 0; for (int i = 0; i
-
스택/큐 > 탑프로그래머스(Programmers) 2018. 9. 26. 21:22
https://programmers.co.kr/learn/courses/30/lessons/42588 1. 문제 2. 알고리즘키워드 - 큐 3. 코드 12345678910111213141516171819202122232425262728293031323334353637#include #include #include #include using namespace std; vector solution(vector heights) { vector answer; queue qq1; reverse(heights.begin(), heights.end()); int size = heights.size(); for (int i = 0; i
-
정렬 > 가장 큰 수프로그래머스(Programmers) 2018. 9. 20. 17:27
https://programmers.co.kr/learn/courses/30/lessons/42746 1. 문제 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 수는 6210입니다. 0 또는 양의 정수가 담긴 배열 numbers가 매개변수로 주어질 때, 순서를 재배치하여 만들 수 있는 가장 큰 수를 문자열로 바꾸어 return 하도록 solution 함수를 작성해주세요. - 제한 사항numbers의 길이는 1 이상 100,000 이하입니다.numbers의 원소는 0 이상 1,000 이하입니다.정답이 너무 클 ..
-
정렬 > K번째수프로그래머스(Programmers) 2018. 9. 20. 16:58
https://programmers.co.kr/learn/courses/30/lessons/42748 1. 문제 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다.1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다.2에서 나온 배열의 3번째 숫자는 5입니다.배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 ..
-
2017 팁스타운 > 예상 대진표프로그래머스(Programmers) 2018. 9. 20. 15:56
https://programmers.co.kr/learn/courses/30/lessons/12985 1. 문제 △△ 게임대회가 개최되었습니다. 이 대회는 N명이 참가하고, 토너먼트 형식으로 진행됩니다. N명의 참가자는 각각 1부터 N번을 차례대로 배정받습니다. 그리고, 1번↔2번, 3번↔4번, ... , N-1번↔N번의 참가자끼리 게임을 진행합니다. 각 게임에서 이긴 사람은 다음 라운드에 진출할 수 있습니다. 이때, 다음 라운드에 진출할 참가자의 번호는 다시 1번부터 N/2번을 차례대로 배정받습니다. 만약 1번↔2번 끼리 겨루는 게임에서 2번이 승리했다면 다음 라운드에서 1번을 부여받고, 3번↔4번에서 겨루는 게임에서 3번이 승리했다면 다음 라운드에서 2번을 부여받게 됩니다. 게임은 최종 한 명이 남을..