분류 전체보기
[프로그래머스 C++] 전력망을 둘로 나누기
[프로그래머스 C++] 전력망을 둘로 나누기
2023.10.19[프로그래머스 C++] 전력망을 둘로 나누기 https://school.programmers.co.kr/learn/courses/30/lessons/86971 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결전략 완전탐색 DFS 코드 #include #include using namespace std; vector adj; // 각 노드의 인접 노드를 저장 vector ch; // 각 노드가 속한 서브트리의 크기를 저장 // DFS 함수. 현재 노드와 이전에 방문한 노드를 인자로 받는다. void DFS(int curr, int prev = -1) { ..
[프로그래머스 C++] 더 맵게
[프로그래머스 C++] 더 맵게
2023.10.18[프로그래머스 C++] 더 맵게 https://school.programmers.co.kr/learn/courses/30/lessons/42626 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결전략 힙 Heap priority queue priority_queue pQ; // 오름차순 코드 #include #include using namespace std; int solution(vector sco, int K) { int answer = 0; priority_queue pQ; // 낮은값이 위로 오도록 오름차순 정렬 for(int i=0; i= K..
[프로그래머스 C++] 섬 연결하기
[프로그래머스 C++] 섬 연결하기
2023.10.18[프로그래머스 C++] 섬 연결하기 https://school.programmers.co.kr/learn/courses/30/lessons/42861 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결방안 탐욕법 최소신장트리 Minimum Spanning Tree(MST) 프루스칼 알고리즘 (Kruskal MST) 정답 코드 #include #include #include using namespace std; int city[101]; struct Edge { int start, end, cost; Edge(int a, int b, int c) { sta..
2023.10.17 운동일지
2023.10.17 운동일지
2023.10.17조깅 5.5km
[프로그래머스 C++] 스킬트리
[프로그래머스 C++] 스킬트리
2023.10.17[프로그래머스 C++] 스킬트리 https://school.programmers.co.kr/learn/courses/30/lessons/49993#fnref1 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결전략 문자열 코드 #include #include using namespace std; vector order; // 스킬트리에 스킬 문자가 들어간 순서를 기록하는 배열. 스킬트리 마다 검사하고 검사 후에는 초기화한다. int solution(string skill, vector skt) { int answer = 0; for(int i=0; i
[백준 12100번 C/C++] 2048 (Easy)
[백준 12100번 C/C++] 2048 (Easy)
2023.10.16[백준 12100번 C/C++] 2048 (Easy) https://www.acmicpc.net/problem/12100 12100번: 2048 (Easy) 첫째 줄에 보드의 크기 N (1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 게임판의 초기 상태가 주어진다. 0은 빈 칸을 나타내며, 이외의 값은 모두 블록을 나타낸다. 블록에 쓰여 있는 수는 2 www.acmicpc.net 해결전략 구현 재귀적인 깊이 우선 탐색(DFS) 시뮬레이션 그리드 회전 정답 코드 #include #include #include using namespace std; int n; // nxn 격자 크기 vector v; // v: 원본 격자 int maxBlock; // 게임판에 존재하는 가장 큰 블록의 값 voi..
2023.10.15 운동일지
2023.10.15 운동일지
2023.10.159.6km 걷기
2023.10.14 운동일지
2023.10.14 운동일지
2023.10.14조깅 4.2km
[프로그래머스 C++] 모음사전
[프로그래머스 C++] 모음사전
2023.10.14[프로그래머스 C++] 모음사전 https://school.programmers.co.kr/learn/courses/30/lessons/84512/solution_groups?language=cpp 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결전략 문자열 5진법 정답 코드 #include #include using namespace std; int solution(string word) { // 각 알파벳 별 가중치 (5^4 ~ 5^0) // nums[]는 각 자리수에 따른 'A', 'E', 'I', 'O', 'U'의 가중치 // 예를 들어, 첫 번..
2023.10.13 운동일지
2023.10.13 운동일지
2023.10.13조깅 5.5km
[프로그래머스 C++] 땅따먹기
[프로그래머스 C++] 땅따먹기
2023.10.13[프로그래머스 C++] 땅따먹기 https://school.programmers.co.kr/learn/courses/30/lessons/12913 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결전략 Dynamic Programming (DP) 다이나믹 프로그래밍 처음 시도한 코드 (DFS) - 시간초과 #include #include using namespace std; int answer; void DFS(int y, int x, int sumNum, vector& land) { if (y == land.size()){ if (answer < sum..
2023.10.12 운동일지
2023.10.12 운동일지
2023.10.12기능성 운동 1시간 + 조깅 및 걷기 5km