목록Programmers (190)
GitHubSeob

문제 https://school.programmers.co.kr/learn/courses/30/lessons/12920 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 처음에는 문제가 이해가 안 갔다. 한 코어에서 작업이 끝나면 작업이 없는 코어가 바로 다음 작업을 수행합니다. 이 부분을 보고 각각의 코어가 각각의 작업을 동시에 할 수 없나?라고 생각을 했다. 그래서 문제에 대한 다른 블로그를 찾아봤더니 동시에 할 수 있는 거였다. 두 번째 문제로는 마지막 작업을 처리하는 코어의 번호를 return하라길래 마지막에 혼자 남아 작업하는 코어의 번호를..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/131129 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 백준에서 DP로 풀었던 '1로 만들기'와 유사한 문제이다. 먼저 점수는 1~20, 1~20의 2의 배수, 1~20의 3의 배수, 50점 이렇게 있다. 셈을 하기 귀찮으므로 코드를 돌려 겹치는 부분을 제거했다. 여기서 중요한 점은 횟수는 최소로 하되, 횟수가 같으면 싱글(1~20), 불(50)을 최대한 많이 맞혀야 한다. 이중탐색을 통해 1점부터 시작하여 모든 과녁을 맞히는 경우를 ..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/138475 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 1. 사진을 절반으로 y와 x가 같은 부분을 기준으로 접으면 똑같이 일치한다. 따라서 절반의 부분만 이중 반복문을 통해 구할 것이다. 2. 그다음은 우선순위 큐를 이용해 top부분이 횟수가 가장 큰 수로 정렬한다. 3. 정렬된 우선순위 큐를 통해 starts의 원소들과 비교하고 answer에 값을 저장한다. 주의할 점으로는 우선순위 큐를 이용하기 때문에 starts벡터가 오름차순으..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/152995 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 순위는 근무 태도 점수 + 동료 평가 점수의 합산으로 정한다. 본인보다 근무 태도 점수, 동료 평가 점수 둘 다 높은 사람이 있는 경우, 순위에서 제외된다. 이중 반복문을 통해 합을 내림차순으로 탐색하면서, 다른 점수들과 비교하면서 순위에서 제외되는지를 판단했다. int idx(0), rank(1), cnt(0); int sum(0), work(0), peer(0), prev(0)..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/12907 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 이전에 풀었던 백준 문제와 똑같다. 동적 계획법인 dp를 이용해 풀었다. 동전의 구성은 같지만, 순서만 바꿔서 다른 경우는 같은 경우로 친다. DP[n] = DP[n-원]이 기본 형태이다. 1원은 1원 동전으로 만들 수 있다. 2원은 1원의 경우의 수와 같다. 3원은 1원의 경우의 수와 같다. . 2원은 기존 방법에서 추가로 더한다. 2원은 2원의 동전으로 만들 수 있다. 1+1 3..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/132266 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 BFS문제이다. 목적지가 나와있으므로 목적지를 시작으로 모든 다리를 건너 갈 수 있는 경우를 탐색했다. 다리의 정보가 담긴 roads벡터에서는 {1, 2}, {2, 3} 이런식으로 나와있어 따로 road벡터로 탐색시간을 줄이고자 한다. road벡터에는 road[1]에는 1과 연결된 다리들을, road[2]에는 2와 연결된 다리들을 이런식으로 road[n]에는 n과 연결된 다리의 정..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/42627 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 작업이 끝나는 최종 시간은 항상 같다. 그리고 최종 시간을 구하는 문제도 아니었다. 작업이 끝난 시간 - 작업을 요청받은 시간을 최소로 만드는 문제이다. 작업이 끝났으면 바로바로 작업을 해야 하므로, 작업의 정보가 들어있는 jobs를 요청 시간 기준으로 오름차순으로 정렬한다. 그다음 작업의 소요시간이 짧은 것이 top에 오는 우선순위 큐를 만들어준다. 작업을 하게 되면 그다음 작업은..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/12941 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 입출력 예 설명과, 몇 가지 테스트를 해봤더니 가장 작은수와 가장 큰수를 곱하여 더하는 값이 최솟값인걸 알았다. 따라서 A를 오름차순으로, B를 내림차순으로 하여 순서대로 곱한 값을 answer에 더해준다. 코드 #include #include #include using namespace std; int solution(vector A, vector B) { int answer(0)..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/12924 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 투 포인터를 이용해 풀었다. 시작 숫자를 s, 끝부분 숫자를 e로 두었다. n / 2 +1 이상의 수로는 연속된 수로 표현할 수 없기 때문에 e의 최대 범위를 n / 2 + 1로 잡았다. 투 포인터 원리를 이용하여 값이 작하면 e를 늘려 sum에 더하고, 값이 크면 sum에서 s를 빼고 s를 한칸 오른쪽(+1)으로 옮겼다. 문제를 보면 숫자 하나로 나타낸 값도 포함이므로 (자기자신)..