전체 글 234

Direct3D (12) / 큐브(도형) 생성

이번에는 삼각형 대신 입체적인 큐브를 구현해보려고 한다삼각형과 달리 큐브는 6개의 면을 가지고 있지만 이를 삼각형으로 구현하면 12개의 삼각형이 필요하고단순히 계산하면 12*3 = 36개의 버텍스가 필요하게 된다하지만 큐브는 8개의 버텍스만 가지고 구현하게 되는데동일한 버텍스를 여러 삼각형에서 재사용 하기 위해 필요한것이 인덱스 버퍼이다 먼저 큐브의 버텍스들을 만들어준다Vertex vertices[8] ={ { -0.5f, 0.5f, -0.5f, 1.0f, 0.0f, 0.0f }, { 0.5f, 0.5f, -0.5f, 0.0f, 1.0f, 0.0f }, { 0.5f, -0.5f, -0.5f, 0.0f, 0.0f, 1.0f }, { -0.5f, -0.5f, -0.5f, 1.0f, 1.0f, 0.0f..

그래픽 2026.08.11

프로그래머스 / 주식가격

https://school.programmers.co.kr/learn/courses/30/lessons/42584?language=cpp 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 계속 가격이 하락하지 않을때마다 인덱스를 쌓고 가격이 하락하면 뒤에서 인덱스를 제거해야 하므로 스택을 사용해 해결했다 stack s; s.push(0);추가로 첫번째 인덱스를 스택에 추가했다 for (int i = 1; i prices[i]) { // 유지된 가격의 기간 = 현재 인덱스 - 스택에 저장된 인덱스 answer[s.top()] = i - s.top(); ..

코딩테스트 2026.08.06

프로그래머스 / 다리를 지나는 트럭

https://school.programmers.co.kr/learn/courses/30/lessons/42583 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr queue> qBridge;queue>를 사용하여 다리의 을 저장했다 int vIdx = 0;다리위의 전체 차량 무게를 별도의 int로 관리하여 매 틱마다 새로 계산하지 않도록 했다 do{ time++; // 차량이 다리에 올라온 시간 + 다리의 길이 qBridge.size()) { curWeight += truck_weights[vIdx]; qBridge...

코딩테스트 2026.08.04

프로그래머스 / 프로세스

https://school.programmers.co.kr/learn/courses/30/lessons/42587 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 우선순위를 저장할 queue와 우선순위 정렬을 할 vector를 이용해 해결했다if문으로 queue의 가장 앞 우선순위가 vector에서 현재 실행해야 하는 우선순위와 숫자가 같다면추가로 가장 앞 우선순위의 인덱스가 location과 같은지 확인하고맞다면 answer를 반환하고 틀리다면 실행대상은 맞지만 찾고있는 인덱스는 아니므로 pop하고 다음 원소를 확인했다찾고있는 우선순위와 front의 우선순위가 다르다면 가장 앞의 원소를 push한 뒤 pop하여..

코딩테스트 2026.08.03

프로그래머스 / 베스트앨범

https://school.programmers.co.kr/learn/courses/30/lessons/42579 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 장르의 이름(key)과 재생 횟수(value)를 이용하여야 하기 때문에 unordered_map 자료구조를 이용했다그리고 총 재생 횟수대로 정렬을 하기 위해 vector도 사용했다 // 장르의 이름(key)과 재생 횟수와 인덱스(value)를 저장하는 unordered_map unordered_map>> umGenres; // 장르의 이름(key)과 총 재생 횟수(value)를 저장하는 unordered_map unordered_map u..

코딩테스트 2026.07.29

프로그래머스 / 의상

https://school.programmers.co.kr/learn/courses/30/lessons/42578 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 옷을 종류별로 정리해야 하기 때문에해시를 사용하는 unordered_map을 이용해 해결했다 더보기#include #include #include using namespace std;int solution(vector> clothes) { int answer = 1; unordered_map umClothes; // 옷의 종류별 개수를 unordered_map에 저장 for (int i = 0; i second + 1); } ..

코딩테스트 2026.07.26

프로그래머스 / 전화번호 목록

https://school.programmers.co.kr/learn/courses/30/lessons/42577 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 처음엔 vector을 sort하여 i와 i+1을 비교하는 방식으로 접근하려고 했는데해시 문제인데 해시를 사용하지 않는 풀이방식이라 다시 생각해보았다unordered_set으로 찾을 string 목록을 저장하고각 단어마다 1부터 길이까지 substr하여 접두어 prefix가 있는지 find해서 해결했다j 더보기#include #include #include using namespace std;bool solution(vector phone_book) { ..

코딩테스트 2026.07.22

프로그래머스 / 완주하지 못한 선수

https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 선수 이름에 정렬이 필요하지 않으므로unordered_map을 이용해 해결했다더보기#include #include #include using namespace std;string solution(vector participant, vector completion) { string answer = ""; unordered_map mPart; for (int i = 0; i second != 0) { answ..

코딩테스트 2026.07.20