본문 바로가기

분류 전체보기495

[프로그래머스]연습문제 : 2 x n 타일링 (level 3)(c++) https://programmers.co.kr/learn/courses/30/lessons/12900 코딩테스트 연습 - 2 x n 타일링 가로 길이가 2이고 세로의 길이가 1인 직사각형모양의 타일이 있습니다. 이 직사각형 타일을 이용하여 세로의 길이가 2이고 가로의 길이가 n인 바닥을 가득 채우려고 합니다. 타일을 채울 때는 �� programmers.co.kr DP #include #include using namespace std; const long long MOD = 1000000007; const int MAX = 60000; long long D[MAX + 1]; int solution(int n) { D[0] = 1; D[1] = 1; // 점화식 : D[n] = D[n - 1] + D[n.. 2020. 6. 22.
20200621_TIL 항목 설명 프로그래머스 알고리즘 풀이 네트워크 단어 변환 여행경로 가장 먼 노드 순위 풀이 오늘은 플로이드-와샬 알고리즘을 공부했다. 이름이 갠지나는 것에 비해 알고리즘 자체가 크게 어려운 것은 아니었다. 스펠링도 뭔가 Flood-Wash 비슷한게...비슷한 느낌으로...씻어나간다...는 느낌...?ㅋㅋㅋㅋㅋ 이제 프로그래머스 순위 332위다ㅋㅋㅋ 레벨 3문제 다 풀면 100위 안에 드는거 아닌가몰라 낄낄 2020. 6. 22.
[프로그래머스]그래프 : 가장 먼 노드 (level 3)(c++) https://programmers.co.kr/learn/courses/30/lessons/49189 코딩테스트 연습 - 가장 먼 노드 6 [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] 3 programmers.co.kr c++ 코드 #include #include #include #include using namespace std; int bfs_get_max_dist_cnt(vector & adj_list, int n) { // 0번노드에서 거리 1부터 시작 // (거리가 0이 아니면 방문한 것으로 판단하기 위해) vector dists(n); queue q; q.push({0, 1}); dists[0] = 1; int max_dist = 0; .. 2020. 6. 22.
[프로그래머스]그래프 : 순위 (level 3)(c++) https://programmers.co.kr/learn/courses/30/lessons/49191 코딩테스트 연습 - 순위 5 [[4, 3], [4, 2], [3, 2], [1, 2], [2, 5]] 2 programmers.co.kr * Floyd-Warshall 알고리즘 활용 방법 1: 상태를 3가지로 나누기 - LOSE, UNKNOWN, WIN #include #include using namespace std; enum { LOSE = -1, UNKNOWN, WIN }; int solution(int n, vector results) { /* Floyd-Warshall 알고리즘 활용 */ // 승패결과 n * n테이블 만들기 vector table(n, vector(n, UNKNOWN)); f.. 2020. 6. 22.