쾌락없는 책임 (공부)
-
[Algorithm] 프로그래머스 프린터 - C++, 큐, 우선순위 큐쾌락없는 책임 (공부)/알고리즘 문제풀이 2022. 2. 26. 20:36
코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr #include #include #include using namespace std; int solution(vector priorities, int location) { int answer = 0; priority_queue pq; queue q; // priority, index for(int i = 0; i < priorities.size(); i++){ pq.push(priorities[i]); q.push(make_pair(priorities[i], i))..
-
[Algorithm] 프로그래머스 더 맵게 - C++, 우선순위 큐쾌락없는 책임 (공부)/알고리즘 문제풀이 2022. 2. 26. 17:34
코딩테스트 연습 - 더 맵게 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같 programmers.co.kr #include #include #include using namespace std; int solution(vector scoville, int K) { int count = 0; // make input priority_queue q; for(int i = 0; i = 2){ int first = -q.top(); q.pop(); if(..
-
[Algorithm] 백준 1520 내리막 길 - C++ ,DFS쾌락없는 책임 (공부)/알고리즘 문제풀이 2022. 2. 26. 17:12
1520번: 내리막 길 여행을 떠난 세준이는 지도를 하나 구하였다. 이 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 한 칸은 한 지점을 나타내는데 각 칸에는 그 지점의 높이가 쓰여 있으 www.acmicpc.net #include using namespace std; int m, n; int map[501][501]; int wayCount[501][501]; int moveX[4] = { 0, 0, 1, -1 }; int moveY[4] = { 1, -1, 0, 0 }; bool isOut(int x, int y){ if(x = n || y >= m) return true; return false; } int DFS(int x, int y){..
-
[Algorithm] 백준 2096 내려가기 - C++, DP, DFS쾌락없는 책임 (공부)/알고리즘 문제풀이 2022. 2. 26. 17:08
2096번: 내려가기 첫째 줄에 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 숫자가 세 개씩 주어진다. 숫자는 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 중의 하나가 된다. www.acmicpc.net #include #include using namespace std; int n; int map[100001][4]; int maxVal[3][4]; int minVal[3][4]; int main(){ // init ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); // input cin >> n; for(int i = 0; i > map[i][0] >> map[i][1] >> map[i][2]; /..
-
[Algorithm] 프로그래머스 배달 - C++, 다익스트라쾌락없는 책임 (공부)/알고리즘 문제풀이 2022. 2. 24. 15:45
코딩테스트 연습 - 배달 5 [[1,2,1],[2,3,3],[5,2,2],[1,4,2],[5,3,1],[5,4,2]] 3 4 6 [[1,2,1],[1,3,2],[2,3,2],[3,4,3],[3,5,2],[3,5,3],[5,6,1]] 4 4 programmers.co.kr #include #include #include using namespace std; int cost[55]; vector edge[55]; void Djikstra(){ cost[1] = 0; priority_queue q; // cost, node q.push(make_pair(0, 1)); while (!q.empty()){ int curPos = q.top().second; int curCost = -q.top().first; q..
-
[Algorithm] 프로그래머스 멀쩡한 사각형 - C++, GCD쾌락없는 책임 (공부)/알고리즘 문제풀이 2022. 2. 24. 14:06
코딩테스트 연습 - 멀쩡한 사각형 가로 길이가 Wcm, 세로 길이가 Hcm인 직사각형 종이가 있습니다. 종이에는 가로, 세로 방향과 평행하게 격자 형태로 선이 그어져 있으며, 모든 격자칸은 1cm x 1cm 크기입니다. 이 종이를 격자 선을 programmers.co.kr using namespace std; long long gcd(long long x, long long y){ long long temp; while(y){ temp = x%y; x = y; y = temp; } return x; } long long solution(int w,int h) { long long answer = 0; long long totalSquare = static_cast(w) * static_cast(h); l..
-
[Algorithm] 프로그래머스 최솟값 만들기 - C++쾌락없는 책임 (공부)/알고리즘 문제풀이 2022. 2. 23. 22:50
코딩테스트 연습 - 최솟값 만들기 길이가 같은 배열 A, B 두개가 있습니다. 각 배열은 자연수로 이루어져 있습니다. 배열 A, B에서 각각 한 개의 숫자를 뽑아 두 수를 곱합니다. 이러한 과정을 배열의 길이만큼 반복하며, 두 수를 곱 programmers.co.kr #include #include #include using namespace std; int solution(vector A, vector B) { int answer = 0; sort(A.begin(), A.end()); sort(B.begin(), B.end()); int len = A.size(); for(unsigned i = 0; i < len; i++){ answer = answer + (A[i] * B[len-i-1]); } r..