본문 바로가기
반응형

분류 전체보기163

[백준 2512] 예산 문제 출처 : https://www.acmicpc.net/problem/2512 렌선 자르기 문제와 비슷한 느낌이 드는 문제 입니다. 다빈치코딩 알고리즘에 넣기에는 중복적인 내용이라 블로그에 추가하였습니다.문제 이해하기예산이 낮은곳은 그대로 두고, 예산이 높은곳만 줄여나가며 총액보다 작게 만드는 문제 입니다.이 문제는 일반적인 이분 탐색 문제와 다른점이 있습니다. 바로 예산을 증액할 필요는 없다는 것입니다. 예산의 총액이 신청한 예산보다 크다면 더이상 예산을 늘릴 필요 없이 최대값을 출력하면 됩니다. 이 부분만 주의하면 문제를 해결할 수 있습니다.코드 작성그럼 코드를 작성하며 문제를 해결해 보겠습니다.입력 받기N = int(input())arr = list(map(int, input().split())).. 2024. 5. 1.
[백준 18185] 라면 사기 (Small) 문제 출처 : https://www.acmicpc.net/problem/18185문제 이해하기라면을 최대한 싸게 사면 되는 문제 입니다. 1개를 살 때에는 3원, 2개를 살 때에는 5원, 3개를 살 때에는 7원을 주고 사야 합니다. 최대한 많이 사는 것이 이득이기 때문에 그리디로 문제를 해결할 수 있습니다.하지만 그리디 문제는 반례를 찾기가 힘듭니다. 반례를 잘 찾아 문제를 해결해야 합니다. 반례는 3개를 살펴볼 때 나오는 것이 아니라 4개 이상일 때 발생 합니다. 라면이 위와 같이 있다고 하겠습니다. 그리디 알고리즘으로 한꺼번에 많이 사는것이 이득이기 때문에 처음에 3개를 사보겠습니다.3개를 한꺼번에 샀기 때문에 3 * 7 로 21의 돈이 들었습니다. 그리고 2번째 2개, 4번째 3개가 남았습니다. 각.. 2024. 4. 29.
[백준 13023] ABCDE 문제출처 : https://www.acmicpc.net/problem/13023 A → B → C → D → E 의 관계가 성립하는 그래프가 있는지 확인하는 문제 입니다.깊이 우선 탐색을 이용하여 4단계까지 깊이가 생성된다면 1을 출력하고, 생성되지 않는다면 0을 출력하면 됩니다.문제 이해하기아래와 같은 친구 관계가 있습니다.1번에서부터 친구 관계를 찾아보면 4단계의 깊이를 내려갈 수 없습니다. 2번에서 시작해도 마찬가지로 4단계의 깊이로 내려갈 수 없습니다. 4번이나 5번에서 시작해야만 4단계의 깊이로 내려갈 수 있습니다. 따라서 이 문제는 모든 친구를 A로 가정하고 다 확인해봐야 합니다.코드작성함정이 없고, 이해하기 쉽기 때문에 바로 코드를 작성하겠습니다.입력 받기mii = lambda : map(i.. 2024. 4. 27.
2023년 정보올림피아드 필기 중등부(16 ~ 20) 2023년도 정보올림피아드 1차대회 필기 중등부 16번부터 20번까지 문제 풀이 입니다.이전 문제는 아래 링크 확인 바랍니다.2024.04.23 - [알고리즘 설명/정보올림피아드 필기] - 2023년 정보올림피아드 필기 중등부(1 ~ 5)2024.04.23 - [알고리즘 설명/정보올림피아드 필기] - 2023년 정보올림피아드 필기 중등부(6 ~ 10)2024.04.24 - [알고리즘 설명/정보올림피아드 필기] - 2023년 정보올림피아드 필기 중등부(11 ~ 15) 16번초등부 19번과 같습니다. 아래 링크를 통해 19번 확인 바랍니다.https://davincicoding.tistory.com/138#19%EB%B2%88 2023년 정보올림피아드 필기 초등부(16 ~ 20)2023년 정보올림피아드 1차.. 2024. 4. 26.
2023년 정보올림피아드 필기 중등부(11 ~ 15) 2023년도 정보올림피아드 1차대회 필기 중등부 6번부터 10번까지 문제 풀이 입니다.이전 문제는 아래 링크 확인 바랍니다.2024.04.23 - [분류 전체보기] - 2023년 정보올림피아드 필기 중등부(1 ~ 5)2024.04.23 - [분류 전체보기] - 2023년 정보올림피아드 필기 중등부(6 ~ 10) 11번세 개의 점을 찍고 각각의 간선들이 몇 번 사용 되었나 묻는 문제 입니다. 총 12개의 정점이 있고, 여기서 세 개의 점을 고르기 때문에 총 220의 경우의 수를 가집니다.$$ _{12}C_3 = \frac{12 * 11 * 10}{3 * 2 * 1} = 220 $$220개의 경우에서 각각의 간선들이 사용 되었는지를 따지는 것입니다.그림과 같이 빨간색 간선이 사용되었는지를 알기 위해서는 전체.. 2024. 4. 25.
2023년 정보올림피아드 필기 중등부(6 ~ 10) 2023년도 정보올림피아드 1차대회 필기 중등부 6번부터 10번까지 문제 풀이 입니다.이전 문제는 아래 링크 확인 바랍니다.2024.04.23 - [분류 전체보기] - 2023년 정보올림피아드 필기 중등부(1 ~ 5) 2023년 정보올림피아드 필기 중등부(1 ~ 5)2023년도 정보올림피아드 1차대회 필기 중등부 1번부터 5번까지 문제 풀이 입니다. 1번 초등부 2번과 같은 문제 입니다. 아래 링크를 통해 2번 확인 바랍니다. https://davincicoding.tistory.com/135#2%EB%B2%88 2davincicoding.co.kr  6번먼저 3의 배수 혹은 4의 배수는 몇개인지 알아보겠습니다.3의 배수는 2001 / 3으로 667개 있습니다.4의 배수는 .. 2024. 4. 24.
2023년 정보올림피아드 필기 중등부(1 ~ 5) 2023년도 정보올림피아드 1차대회 필기 중등부 1번부터 5번까지 문제 풀이 입니다. 1번 초등부 2번과 같은 문제 입니다. 아래 링크를 통해 2번 확인 바랍니다. https://davincicoding.tistory.com/135#2%EB%B2%88 2023년 정보올림피아드 필기 초등부(1 ~ 5) 2023년도 정보올림피아드 1차대회 초등부 필기 1번부터 5번까지 문제풀이 입니다. 1번 직접 시뮬레이션을 통해 왼쪽과 비교하여 더 빠른 경우 속도를 맞춰주면 쉽게 알 수 있습니다. 초기 속도는 davincicoding.co.kr 2번 초등부 4번과 같은 문제 입니다. 아래 링크를 통해 4번 확인 바랍니다. https://davincicoding.tistory.com/135#4%EB%B2%88 2023년 정.. 2024. 4. 23.
2022년 정보올림피아드 필기 중등부(16 ~ 20) 2022년도 정보올림피아드 1차대회 필기 중등부 16번부터 20번까지 문제 풀이 입니다. 이전 문제는 아래 링크 확인 바랍니다. 2024.04.20 - [알고리즘 설명/정보올림피아드 필기] - 2022년 정보올림피아드 필기 중등부(1 ~ 5) 2024.04.21 - [알고리즘 설명/정보올림피아드 필기] - 2022년 정보올림피아드 필기 중등부(6 ~ 10) 2024.04.22 - [알고리즘 설명/정보올림피아드 필기] - 2022년 정보올림피아드 필기 중등부(11 ~ 15) 16번 초등부 19번과 같습니다. 아래 링크를 통해 19번 확인 바랍니다. https://davincicoding.tistory.com/134#19%EB%B2%88 2022년 정보올림피아드 필기 초등부(16 ~ 20) 2022년도 정보.. 2024. 4. 22.
2022년 정보올림피아드 필기 중등부(11 ~ 15) 2022년도 정보올림피아드 1차대회 필기 중등부 11번부터 15번까지 문제 풀이 입니다. 이전 문제는 아래 링크 확인 바랍니다. 2024.04.20 - [알고리즘 설명/정보올림피아드 필기] - 2022년 정보올림피아드 필기 중등부(1 ~ 5) 2024.04.21 - [알고리즘 설명/정보올림피아드 필기] - 2022년 정보올림피아드 필기 중등부(6 ~ 10) 11번 2310을 소인수분해하여 세 수를 만들 수 있습니다. 2310 = 2 * 3 * 5 * 7 * 11 위와 같이 표현할 수 있습니다. 이것을 적절히 분배하여 a, b, c의 경우의 수를 구하면 되는 문제 입니다. a 가 1인 경우 먼저 a 가 1인 경우를 생각해 보겠습니다. a가 1이라면 b와 c로 2310이 될 수 있는 경우의 수 입니다. b를.. 2024. 4. 22.
반응형