본문 바로가기

분류 전체보기86

[C++]프로그래머스 - 이모티콘 할인행사(조합) 난이도 : Lv2 (중)풀이 시간 : 35분알고리즘 유형 : 조합, DFS풀이 방법 : 가능한 경우 탐색 후 조합  문제 설명카카오톡은 이모티콘 플러스 서비스 가입자를 늘리기 위해 할인 행사를 진행합니다.목표는 이모티콘 플러스 서비스 가입자 수를 최대화하고, 그 다음으로 이모티콘 판매액을 늘리는 것입니다. n명의 사용자에게 m개의 이모티콘을 할인해서 판매한다.이모티콘마다 할인율은 10%, 20%, 30%, 40% 중 하나이다.사용자는 자신이 설정한 할인율 이상으로 할인이 되는 이모티콘을 구매하고, 구매 금액이 설정 금액 이상이면 플러스 서비스에 가입한다.예시사용자할인율한도1번40%10,000원2번25%10,000원이모티콘가격1번7,000원2번9,000원이모티콘을 40% 할인하면, 두 사용자는 모두 이모티.. 2024. 11. 24.
[C++]백준(BOJ) 1446 - 지름길(DP) 난이도 : 실I풀이 시간 : 40분알고리즘 유형 : DP, 다익스트라풀이 방법 : d만큼 순회 해서 최솟값 저장(DP)  문제 예시 🚗💨이 문제는 매일 아침 고속도로를 지나 학교에 가는 세준이가, 고속도로에 존재하는 지름길을 이용해 최단 거리로 목적지에 도달하는 방법을 찾는 문제입니다. 문제를 해결한 방식: 동적 계획법 (DP) 💡이 문제에서는 동적 계획법을 사용하여 각 위치까지의 최단 거리를 계산합니다. DP 방식으로 문제를 푼 이유:동적 계획법을 사용하면, 각 위치까지의 최단 거리를 구할 때 이전 값들만 사용하여 효율적으로 갱신할 수 있습니다. 고속도로를 따라 1km씩 주행하면서 거리를 갱신하고, 지름길을 고려할 때도 그 값을 갱신하는 방식이 DP의 핵심입니다.시간제한은 2초이며, N은 12 이.. 2024. 11. 23.
[C++]백준(BOJ) 2169 - 로봇 조종하기(DP) 난이도 : 골II풀이 시간 : 50분알고리즘 유형 : DP풀이 방법 : Left, Right, Up 비교 후 최대값 확인    문제 링크https://www.acmicpc.net/problem/2169     📋 문제 설명NASA의 화성 탐사 로봇이 N×M 크기의 지형에서 가장 탐사 가치가 높은 경로를 찾아야 합니다. 로봇은 다음 규칙에 따라 움직입니다:움직일 수 있는 방향:    ★  왼쪽, 오른쪽, 아래쪽으로 이동할 수 있습니다.    ★  위로는 이동할 수 없습니다.탐사 가치:    ★  각 칸에는 정수로 탐사 가치가 주어지며, 한 번 방문한 칸은 다시 방문하지 않습니다.목표:    ★   좌측 상단 (1, 1)에서 시작해 우측 하단 (N, M)으로 이동하며, 탐사 가치의 합을 최대화합니다.   .. 2024. 11. 21.
[C++]백준(BOJ) 2473 - 저울 (그리디) 난이도 : 골II풀이 시간 : 40분알고리즘 유형 : 그리디, 정렬풀이 방법 : 오름차순의 합을 구한 뒤 비교   문제 예시무게가 양의 정수인 N개의 저울추가 주어질 때, 이 추들을 사용하여 측정할 수 없는 양의 정수 무게 중 최솟값을 구하는 프로그램을 작성하시오.예를 들어, 무게가 각각 3, 1, 6, 2, 7, 30, 1인 7개의 저울추가 주어졌을 때, 이 추들로 측정할 수 없는 양의 정수 무게 중 최솟값은 21이다. 입력첫 째 줄에는 저울추의 개수를 나타내는 양의 정수 N이 주어진다. N은 1 이상 1,000 이하이다. 둘째 줄에는 저울추의 무게를 나타내는 N개의 양의 정수가 빈칸을 사이에 두고 주어진다. 각 추의 무게는 1이상 1,000,000 이하이다.출력첫째 줄에 주어진 추들로 측정할 수 없는.. 2024. 11. 20.
[C++]백준(BOJ) 15686 - 치킨 배달 (백트래킹, 순열) 난이도 : 골V풀이 시간 : 40분알고리즘 유형 : 백트래킹, 조합(Comb)풀이 방법 : (백트래킹, 조합) 을 이용한 최소 거리 합 계산  문제 링크https://www.acmicpc.net/problem/15686  문제 예시 주어진 N×N 크기의 도시에서, 각 칸은 빈 칸(0), 집(1), 치킨집(2)으로 구분됩니다. 각 집은 가장 가까운 치킨집과의 거리를 계산해 "치킨 거리"를 가집니다. 도시의 "치킨 거리"는 모든 집의 치킨 거리 합입니다. (2, 1)에 있는 집과 (1, 2)에 있는 치킨집과의 거리는 |2-1| + |1-2| = 2, (5, 5)에 있는 치킨집과의 거리는 |2-5| + |1-5| = 7이다. 따라서, (2, 1)에 있는 집의 치킨 거리는 2이다. (5, 4)에 있는 집과 (1.. 2024. 11. 19.
[C++]프로그래머스- 산 모양 타일링(DP) 난이도 : LV3(상)풀이 시간 : 1시간 이상(풀이 참고)알고리즘 유형 : DP 풀이 방법 : DP, 점화식 문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/258705 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 참고https://tech.kakao.com/posts/610 2024 카카오 겨울 인턴십 코딩테스트 문제해설 - tech.kakao.com안녕하세요, 카카오에서 계정시스템 개발을 맡고 있는 잭입니다. 2024 카카오 채...tech.kakao.com 그림을 그려봐도 답이 나오지 않아 카카오 인턴쉽 해설을 봤습니다.너무 설명.. 2024. 11. 18.