⭐ 코딩테스트
[프로그래머스 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..
[프로그래머스 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..
[프로그래머스 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'의 가중치 // 예를 들어, 첫 번..
[프로그래머스 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..
[프로그래머스 C++] 방문 길이
[프로그래머스 C++] 방문 길이
2023.10.12[프로그래머스 C++] 방문 길이 https://school.programmers.co.kr/learn/courses/30/lessons/49994 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결전략 방문 경로 길이 구하기 4차원 배열 처음 시도한 코드 - 테스트 케이스 5개 실패 #include #include using namespace std; int answer = 0; // 방문 길이 int ch[11][11]; // (y, x) 방문 체크 int chDir[11][11][4]; int y = 0, x = 0; // 시작 위치 // 방문 체크..
[백준 1946번 C/C++] 신입 사원
[백준 1946번 C/C++] 신입 사원
2023.10.11[백준 1946번 C/C++] 신입 사원 https://www.acmicpc.net/problem/1946 1946번: 신입 사원 첫째 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 20)가 주어진다. 각 테스트 케이스의 첫째 줄에 지원자의 숫자 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개 줄에는 각각의 지원자의 서류심사 성 www.acmicpc.net 해결방법 탐욕 알고리즘 Greedy Algorithm 처음 시도한 코드 - 시간초과 #include #include #include using namespace std; int t, n; // t: 테스트 케이스 개수, n: 지원자 수 int answer; // 선발할 수 있는 신입사원의 최대 인원수 struct Stat { int d..
[프로그래머스 C++] 뒤에 있는 큰 수 찾기
[프로그래머스 C++] 뒤에 있는 큰 수 찾기
2023.10.10[프로그래머스 C++] 뒤에 있는 큰 수 찾기 https://school.programmers.co.kr/learn/courses/30/lessons/154539 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결전략 stack 스택 처음 시도한 코드- 시간초과 #include #include using namespace std; vector solution(vector numbers) { vector answer; for(int i=0; i
[프로그래머스 C++] 인사고과
[프로그래머스 C++] 인사고과
2023.10.09[프로그래머스 C++] 인사고과 https://school.programmers.co.kr/learn/courses/30/lessons/152995 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결전략 정렬 처음 시도한 코드 #include #include #include using namespace std; struct Score { int attitude; int coworker; int total; Score(int a, int b, int c) { attitude = a; coworker = b; total = c; } bool operator>..
[프로그래머스 C++] [3차] n진수 게임
[프로그래머스 C++] [3차] n진수 게임
2023.10.08[프로그래머스 C++] [3차] n진수 게임 https://school.programmers.co.kr/learn/courses/30/lessons/17687 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결전략 문자열 진법 변환 (2진수, 16진수 변환) 코드 #include #include using namespace std; // n: 진법, t: 미리 구할 숫자의 갯수(튜브가 말해야 하는 숫자의 개수), m: 게임 참가 인원, p: 튜브의 순서 string Convert(int k, int n) // k: 주어진 숫자, n: 진법 { if (k ..
[프로그래머스 C++] 게임 맵 최단거리
[프로그래머스 C++] 게임 맵 최단거리
2023.10.07[프로그래머스 C++] 게임 맵 최단거리 https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결전략 BFS 너비우선탐색 처음시도한 코드 #include #include using namespace std; int dirY[4] = { -1, 0, 1, 0 }; int dirX[4] = { 0, -1, 0, 1 }; queue Q; int ch[101][101]; int solution(vector maps) { int answer = 0; Q.pu..