본문 바로가기

전체 글495

[프로그래머스]탐욕법(Greedy) : 단속카메라 (level 3)(c++) https://programmers.co.kr/learn/courses/30/lessons/42884 코딩테스트 연습 - 단속카메라 [[-20,15], [-14,-5], [-18,-13], [-5,-3]] 2 programmers.co.kr #include #include #include using namespace std; int solution(vector routes) { // 끝점을 기준으로 오름차순 정렬 sort(routes.begin(), routes.end(), [](vector &a, vector &b) { return a[1] < b[1]; }); /* 카메라를 설치하는 기준 : 기준끝점(std_end)이 다음차의 시작점보다 작을 때 (=영역이 겹치지 않을 때) 기준끝점에 카메라를 설치한.. 2020. 6. 19.
[프로그래머스]탐욕법(Greedy) : 섬 연결하기 (level 3)(c++) https://programmers.co.kr/learn/courses/30/lessons/42861 코딩테스트 연습 - 섬 연결하기 4 [[0,1,1],[0,2,2],[1,2,5],[1,3,1],[2,3,8]] 4 programmers.co.kr #include #include #include using namespace std; // 노드x가 포함된 트리의 루트노드 가져오기 int get_root(vector &parent, int x) { // x가 노드x의 부모라면 if (x == parent[x]) { return x; } /* 다른 노드가 노드x의 부모라면, 루트노드를 찾을 때까지 재귀함수 호출. 마지막에 노드x의 부모에 해당 루트노드 저장후 반환 */ return parent[x] = get.. 2020. 6. 18.
20200617_TIL 항목 설명 BOJ 프로그래머스 알고리즘 문제 풀이 적록색약 4연산 동전 0 등굣길 풀이 (프로그래머스) 섬 연결하기 문제는 내일 이어서 풀기로 했다. 문제를 끝내지 못한채로 잠드는 건 처음인데.. Kruskal 알고리즘과 Union-Find 알고리즘을 공부해야 할 때가 온것 같아서ㅋㅋㅋ 좀 진지하게 내일 맑은 정신으로 공부하고나서 이 문제를 풀어야겠다! 2020. 6. 18.
[프로그래머스]동적계획법(Dynamic Programming) : 등굣길 (level 3)(c++) https://programmers.co.kr/learn/courses/30/lessons/42898 코딩테스트 연습 - 등굣길 계속되는 폭우로 일부 지역이 물에 잠겼습니다. 물에 잠기지 않은 지역을 통해 학교를 가려고 합니다. 집에서 학교까지 가는 길은 m x n 크기의 격자모양으로 나타낼 수 있습니다. 아래 그림은 m = programmers.co.kr #include #include using namespace std; const int MOD = 1000000007; int solution(int m, int n, vector puddles) { // 문제에서 m : 행, n : 열로 주어진다. vector ways(m + 1, vector(n + 1)); vector is_puddle(m + 1.. 2020. 6. 18.