본문 바로가기

개발 🛠💻/코딩테스트 & 알고리즘6

Data Structure Visualizations https://www.cs.usfca.edu/~galles/visualization/Algorithms.html Data Structure Visualization www.cs.usfca.edu 2022. 8. 22.
C++ 프로그래머스 코딩테스트 - 야근 지수 (12927) 야근 지수 Level 3 https://school.programmers.co.kr/learn/courses/30/lessons/12927 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 퇴근까지 남은 시간 N이 주어지고, 작업량 리스트가 주어진다. 야근 지수의 최솟값을 리턴해야 하는데, 야근 지수를 가장 작은 수로 만들려면, 작업량 리스트의 숫자들의 차이가 적게 나야한다. 예를들어 [10, 9, 8, 1] 의 작업량 리스트와 시간 5 값이 주어질 때, [8, 8, 6, 1] 보다 [7, 7, 8, 1] 가 야근 지수가 더 낮다. (리스트의 숫자들의 격차가.. 2022. 7. 22.
C++ 프로그래머스 코딩테스트 - 기지국 설치 (12979) 기지국 설치 Level 3 https://school.programmers.co.kr/learn/courses/30/lessons/12979 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 기지국을 최소로 설치하면서 모든 아파트에 전파를 전달한다. 위의 예시에서는 최소 3개를 설치하면 모든 아파트에 전달 가능하다. 나의 풀이 int solution(int n, vector stations, int w) { int answer = 0; int lastRightIdx = 0; for (int appart : stations) { int leftIdx = app.. 2022. 7. 21.
C++ 프로그래머스 코딩테스트 - 경주로 건설 (67259) 경주로 건설 Level 3 https://school.programmers.co.kr/learn/courses/30/lessons/67259 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 직선 도로 하나를 만들 때는 100원이 소요되며, 코너를 하나 만들 때는 500원이 추가로 소요. 견적서 작성을 위해 경주로를 건설하는 데 필요한 최소 비용을 계산해야 한다. 나의 풀이 int solution(vector board) { int directx[] = { 0,0,1,-1 }; int directy[] = { 1,-1,0,0 }; int visit_minPr.. 2022. 7. 21.
C++ 프로그래머스 코딩테스트 - 네트워크 (43162) 네트워크 Level 3 https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1 - 2 처럼 이어진 네트워크를 하나로 본다. 위 경우 네트워크의 총 개수는 2개이다. 1 - 2 / 3 나의 풀이 int solution(int n, vector computers) { // 단방향 네트워크 체크. for (int i = 0; i < n; ++i) for (int j = 0; j < n; ++j) if (computers[i][j] != computers.. 2022. 7. 20.
C++ 프로그래머스 코딩테스트 - 가장 먼 노드 (49189) 가장 먼 노드 Level 3 https://school.programmers.co.kr/learn/courses/30/lessons/49189 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 시작점으로 부터 가장 멀리 떨어져 있는 노드를 찾는 문제이다. 나의 풀이 #include #include #include using namespace std; int solution(int n, vector edge) { int 가장_먼_간선개수 = 0; map dest_count{ {1,0} }; queue q; q.push({ 1, 0, 0/*간선 개수*/, 1/*.. 2022. 7. 18.