⭐ 코딩테스트/프로그래머스
[프로그래머스 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
[프로그래머스 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; // 시작 위치 // 방문 체크..
[프로그래머스 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..
[프로그래머스 C++] 주차 요금 계산
[프로그래머스 C++] 주차 요금 계산
2023.10.06[프로그래머스 C++] 주차 요금 계산 https://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결방안 문자열 substr sstream 코드 #include #include #include #include using namespace std; vector solution(vector fees, vector records) { map inTime; // 각 차량의 마지막 입차 시간 map totalTime; // 각 차량의 총 주차 시간 for (st..
[프로그래머스 C++] 길 찾기 게임
[프로그래머스 C++] 길 찾기 게임
2023.10.04[프로그래머스 C++] 길 찾기 게임 https://school.programmers.co.kr/learn/courses/30/lessons/42892 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결방안 이진트리 Binary Tree 정답코드 #include #include #include #include using namespace std; #define TIII tuple struct Node { Node(int x, int y, int idx) : x(x), y(y), idx(idx) {}; int x; int y; int idx; Node* p..
[프로그래머스 C++] 전화번호 목록
[프로그래머스 C++] 전화번호 목록
2023.10.02프로그래머스 C++] 전화번호 목록 https://school.programmers.co.kr/learn/courses/30/lessons/42577 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결전략 set, string phone_book[i + 1].substr(0, phone_book[i].size()) basic_string substr(size_type start = 0, size_type count = nstart) const; [start, start+ count) 문자열의 start 번째 문자부터 count 길이 만큼의 문자열 추출 처..