분류 전체보기590 [Python] 프로그래머스 택배 배달과 수거하기(탐욕 알고리즘) 이번 문제는 Level2 문제입니다. 탐욕 알고리즘을 사용하면 풀 수 있는 문제입니다. 문제의 링크입니다. https://school.programmers.co.kr/learn/courses/30/lessons/150369 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제는 등간격을 가지는 집들이 택배사를 기점으로 있을 때, 각각의 집에서 요청한 택배의 개수와 수거품들을 최소한의 거리 이동으로 모두 처리하는 문제입니다. 그림에서와 같이 왼쪽에 택배사가 있고, 여러 집들이 1의 거리를 사이로 위치하고 있습니다. 택배차에는 실을 수 있는 택배 상자의 개수가.. 2023. 4. 16. [C/C++] 백준 #2206 벽 부수고 이동하기(너비 우선 탐색) #2206은 평범한 너비 우선 탐색 문제는 아닙니다. 벽을 한번까지는 부실 수 있는 조건이 있기 때문에, 이에 대해서 처리를 해주어야 합니다. 문제의 링크는 다음과 같습니다. https://www.acmicpc.net/problem/2206 2206번: 벽 부수고 이동하기 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로 www.acmicpc.net 이 문제는 한번 이동하는데 항상 1이라는 가중치가 있는 그래프이기 때문에, 벽을 뚫고 갈 수 있다는 것을 원칙을 정해서 풀면 됩니다. 1) 벽을 한번 부수고 지나간 길은 음의 값으로 경로값을 적는다... 2023. 4. 16. [C/C++] 백준 #2193 이친수(수학, 피보나치 수열) #2193은 수학적 원리를 알고 있으면 쉽게 풀 수 있습니다. 문제의 링크는 다음과 같습니다. https://www.acmicpc.net/problem/2193 2193번: 이친수 0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않 www.acmicpc.net 이친수는 0으로 시작하지 않고, 1이 연속으로 나타나지 않는 수입니다. 이것과 관련해서 제가 쓴 글이 있습니다. https://sdev.tistory.com/319 동전을 n번 던졌을 때, 연속으로 앞면이 나타날 경우의 수는? 이런 경우의 수를 계산하는 것이 쉽지는 않습니다. 어떻게 생각을 해.. 2023. 4. 13. [C/C++] 백준 #2188 축사 배정(이분 매핑) #2188 문제는 이분 매핑의 대표적인 문제입니다. 이분 매핑(binary mapping)이라는 것은 최대 유량 알고리즘(maximum flow algorithm)의 특별한 버전입니다. 문제의 링크입니다. https://www.acmicpc.net/problem/2188 2188번: 축사 배정 농부 존은 소 축사를 완성하였다. 축사 환경을 쾌적하게 유지하기 위해서, 존은 축사를 M개의 칸으로 구분하고, 한 칸에는 최대 한 마리의 소만 들어가게 계획했다. 첫 주에는 소를 임의 배정해 www.acmicpc.net 문제에서 축사를 소에 배정을 해주는데, 소들은 자신들이 원하는 축사들 중 하나를 배정받지 않으면 다른 축사에 들어가지 않으려 합니다. 이럴 경우 가능한 많은 소를 원하는 축사에 배정하는 알고리즘입니.. 2023. 4. 13. [C/C++] 백준 #2178 미로 탐색(너비 우선 탐색) 미로 탐색은 대표적인 그래프 탐색과 관련되어 풀 수 있는 문제입니다. 길이 여러개이고, 움직일 때 비용이 똑같다고 한다면, 다익스트라와 같이 우선순위큐를 사용하는 알고리즘을 이용하지 않고, 너비 우선 탐색을 이용해도 됩니다. 문제의 링크입니다. https://www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 이번 미로 탐색은 최단 경로를 찾아야 한다는 표현이 있지만, 고전적인 미로 탐색 문제입니다. 너비우선탐색 알고리즘을 이용하였습니다. 출발점에서부터 너비우선탐색을 하다가 도착지점에 도착하면.. 2023. 4. 13. [C/C++] 백준 #2169 로봇 조종하기(동적 계획법) #2169 문제는 동적 계획법을 이용했지만, 일반적인 동적 계획법은 한방향으로만 진행되는 경우에 주로 사용됩니다. 이 문제에서는 한곳의 값을 결정하기 위해서는 왼쪽, 오른쪽, 그리고 위라는 3군데 방향을 고려해야 하므로 좀 까다롭습니다. 문제의 링크입니다. https://www.acmicpc.net/problem/2169 2169번: 로봇 조종하기 첫째 줄에 N, M(1≤N, M≤1,000)이 주어진다. 다음 N개의 줄에는 M개의 수로 배열이 주어진다. 배열의 각 수는 절댓값이 100을 넘지 않는 정수이다. 이 값은 그 지역의 가치를 나타낸다. www.acmicpc.net 문제는 나사(NASA)의 로봇이 화성을 돌아다닐때, 최대한의 가치를 얻으면서 지역을 탐사하는 것입니다. 처음에 어떻게 짜야할까 고민하.. 2023. 4. 12. 이전 1 ··· 25 26 27 28 29 30 31 ··· 99 다음 728x90