본문 바로가기
728x90
반응형

백준15

[백준] 15903번: 카드 합체 놀이 https://www.acmicpc.net/problem/15903 15903번: 카드 합체 놀이 첫 번째 줄에 카드의 개수를 나타내는 수 n(2 ≤ n ≤ 1,000)과 카드 합체를 몇 번 하는지를 나타내는 수 m(0 ≤ m ≤ 15×n)이 주어진다. 두 번째 줄에 맨 처음 카드의 상태를 나타내는 n개의 자연수 a1, www.acmicpc.net 오늘 문제는 Greedy 알고리즘 카테고리에 있던 문제다. 풀이는 아래 코드를 확인하자! (기본 아이디어 베이스) 결국 최종 카드 합체 놀이가 끝나고 난 결과들을 다 더했을 때 최소가 되려면 애당초 합체 놀이를 진행할 때 작은 수들만 2개 골라 더해가면 된다. 1. 그러면 항상 작은 순서대로 수들을 정렬해두자. 2. 가장 작은 2개의 수들을 뽑고 이 결과를 다.. 2023. 11. 16.
[백준] 한수 https://www.acmicpc.net/problem/1065 1065번: 한수 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 www.acmicpc.net 문제에서 N은 1000이하 수다. 나는 1000 이상의 수에 대해서도 한수를 찾을 수 있게 string을 이용해 문제를 풀었다. 문제에 접근하기 전 N을 100 미만일때와 이상일때로 나눈다. 즉 N의 자리수가 2자리냐 3자리 이상이냐에 따라 문제를 접근한다. 해설 1) N이 100 미만일때 한수는 입력으로 들어온 수 N만큼 있다. ex) N이 80이면 한수는 80개다. 2) N이 100 이상일때 한수.. 2023. 6. 25.
[백준] 다리 놓기 - DP 문제 보러 가기 해당 문제는 백준 DP 알고리즘 분류에서 Silver 5 문제입니다. 문제 설명은 생략하고 제가 생각한 풀이를 적어보겠습니다. 참고로, 저는 C++ 언어를 사용합니다. 같이 생각해보기? 왼쪽의 다리와 오른쪽 다리를 연결합니다. 또한 다리는 각 1대1로 대응되어 건설됩니다. 이때 다리 건설은 서로 겹치지 않는다고 했으니, 무조건 1대1 대응이 확정입니다. 그렇다면 다리의 수는 항상 오른쪽 구역이 더 많은데 서로 중복되는게 없어야 한다? 즉 순서는 상관 없지만, 중복되는 것을 빼고 계속 뽑는다는 의미겠죠? 예, 조합을 의미합니다. 오른쪽 기준 내가 왼쪽 구역에서 다리를 선택하겠어! 라는 생각으로 문제를 접근해봅시다. 시작 전에 조합 공식 기억나시나요? 여기 있습니다!! 출처는 인터넷 ㅎ 피보.. 2022. 11. 12.
728x90
반응형