no image
32224:물탱크 알바(easy) [백준 문제풀이][Python]
해설지에서 미쳐 다 담지 못한 디테일한 풀이를 정리해서 올려보았습니다. 혹시라도 읽어보고 이해가 되지 않는 부분이나 다른 의견은 댓글에다가 남겨주시길... 문제: https://www.acmicpc.net/problem/32224난이도: 골드 상위 ~플레 하위Code Master 2024에 내가 직접 출제한 문제이다. DFS를 사용하여 풀면 된다.뭔 문제야 이게?혹시라도 문제를 이해하지 못 한 사람들을 위해 예제를 통해 설명해주겠다.7 64 2 2 1 1 1 11 1 2 2 3 3예제입력 1을 tree 구조로 나타내면 이러한 형태일 것이다.이 상황에서 6의 물을 어느 물탱크부터 넣어야 가장 많은 물탱크를 채울 수 있을까? 중요한 조건은 현태 물탱크가 꽉 찬다면, 부모 물탱크로 물이 넘쳐 올라간다는 것이다..
2024.09.07
no image
17298:오큰수 [백준 문제풀이][Python]
문제:https://www.acmicpc.net/problem/17298난이도: 골드 4스택을 이용하여 최댓값을 구하는 문제. 처음 보는 개념이라 이해하는데 꽤 애를 먹었다.아이디어1처음에는 단순하게 최댓값을 찾아서 계속 업데이트 해주는 방식을 생각해봤는데, 단순 계산으로도 O(n^2)이 넘어서 안된다. 입력 값이 10만이기 때문에 O(nlogn) 또는 O(n)으로 풀어야 된다.아이디어2다음은 스택을 사용한 풀이이다. 혼자 생각한건 아니고, 대충 찾아보면서 삽질 좀 했다.스택은 선입후출(Last In Fisrt Out)의 방식을 가진 자료구조로, 선입선출 방식인 큐와 대비되는 방식이다. 이를 이용해서 최댓값을 구할 수 있는데, 스택을 하나의 탑으로 보자면, 값이 들어올때마다 탑의 맨 윗부분부터 비교하면서..
2024.07.24
no image
1202:보석 도둑 [백준 문제풀이][Python]
https://www.acmicpc.net/problem/1202난이도: 골드 2학교에서 친구와 함께 푼 문제. 그리디 알고리즘을 쓰되, 최대한 효율적으로 최댓값을 구해야 한다.아이디어1우선 가방마다 담을 수 있는 무게가 다 다르기 때문에, 가방에 담을 수 있는 무게 C에 대하여 C보다 작은 보석 중 가장 가치 있는 보석을 계속해서 가져가면 된다.실패한 이유그러나 이 알고리즘은 잘못됐다. 왜냐하면 계산 과정이 매우 오래 걸리기 때문이다. 우선 C가 어디 사이에 있는 값인지 알아야 한다. 물론 bisect라는 이진탐색을 지원해주는 함수를 쓰면 되지만 그런다 하더라도, 최댓값이 어딨는지 찾는 과정에서 배열 순회를 해야하기 때문에 시간 초과가 날 것이다. 이를 해결해주기 위해서 전에 공부했던 우선 순위 큐를 ..
2024.07.15
no image
11444:피보나치 6 [백준 문제풀이][Python]
문제:https://www.acmicpc.net/problem/11444난이도: 골드 2단순히 피보나치 수를 구하는 문제. 다만 n이 무지막지하게 큰.아이디어 1처음에는 분할 정복을 어떻게 쓸지 생각이 안 떠올랐다. 그렇게 고민을 하다가 피보나치 수를 직접 나눠서 써보기로 하였다.우선 n이 짝수일 때이다. n=2k일 때 k번째 항까지 분할을 하였다.f(10)을 예시로 들어봤다. 2개로 계속해서 나누었을 때 항의 개수가 피보나치수열을 이루는 것을 알 수 있다. n/2까지 과정을 반복해 보면 다음과 같은 식을 얻을 수 있다.다음은 n이 홀수 일 때다.n=k//2+1이라 할 때 k번째 항까지 분할하였다. 일반항으로 나타내면 다음과 같다.나도 왜 이런 식이 나오는지는 모른다. 2시간 정도 노트에다가 끄적여보며 ..
2024.07.10
no image
1074 : Z [백준 문제풀이][C++]
문제:https://www.acmicpc.net/problem/1074 1인 경우, 배열을" data-og-host="www.acmicpc.net" data-og-source-url="https://www.acmicpc.net/problem/1074" data-og-url="https://www.acmicpc.net/problem/1074" data-og-image="https://scrap.kakaocdn.net/dn/tjWnJ/hyTBHl0I87/73TRFfjERJ85Pv9iBfzzCK/img.png?width=2834&height=1480&face=0_0_2834_1480,https://scrap.kakaocdn.net/dn/buCrT6/hyTBDjCCnG/dr3twovjDIx5zTxPwgXnH1/..
2023.08.11