분류 전체보기 2431

백준 17837번 새로운 게임 2

문제 링크입니다: https://www.acmicpc.net/problem/17837 문제에서 주어진 대로 풀면 되는 문제였습니다.저는 같은 칸에 여러 개의 말이 위치할 수 있고 쌓인 순서를 토대로 로직이 달라질 수 있기 때문에 stack 자료구조를 사용하여 말이 쌓인 순서를 표현했습니다,. * moveDir[4]를 {1, 0}이 아닌 {0, 1}로 해놓고 맞왜틀 이러고 있었네요... 아까운 내 시간 개발환경:Visual Studio 2022 지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

알고리즘/BOJ 2024.05.07

백준 1513번 경로 찾기

문제 링크입니다: https://www.acmicpc.net/problem/1513 문제 지문으로부터 메모이제이션을 적용할 수 있는 상태값은 현재 위치(y, x), 방문한 오락실 개수, 그리고 직전에 방문한 오락실 번호임을 유추할 수 있습니다.따라서 네 상태값을 기준으로 DP를 적용하여 풀면 되는 문제였습니다.  개발환경:Visual Studio 2022 지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

알고리즘/BOJ 2024.05.06

백준 12852번 1로 만들기 2

문제 링크입니다: https://www.acmicpc.net/problem/12852 연산을 하는 횟수의 최솟값은 DP를 통해 간단하게 구할 수 있는 문제였습니다.문제는 " N을 1로 만드는 방법에 포함되어 있는 수"를 출력하는 것이었는데 이는 DP에 사용했던 cache 배열을 역추적하며 구할 수 있었습니다.테스트해 본 결과 top-down 방식으로 구현할 경우 N이 100만 일 때 stackoverflow가 발생하는 것 같은데 AC를 받는 것으로 보아 데이터 추가가 필요해 보입니다.  개발환경:Visual Studio 2022 지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

알고리즘/BOJ 2024.05.06

백준 2670번 연속부분최대곱

문제 링크입니다: https://www.acmicpc.net/problem/2670 그리디 하게 접근한 문제였습니다.구간을 점차 확장하면서, 현재 구간의 연속 부분곱보다 현재 구간의 끝에 위치한 숫자가 큰 경우, 구간의 시작을 초기화하는 방식으로 문제를 해결했습니다. 문제의 예제 입력을 예로 들자면 다음과 같습니다. 구간구간의 연속부분곱현재 구간의 끝에 위치한 숫자연속부분최대곱[0, 0]1.11.11.1[0, 1]0.770.71.1[0, 2]1.0011.31.1[2, 2]1.31.31.3[2, 3]1.170.91.3[2, 4]1.6381.41.638[2, 5]1.31040.81.638[2, 6]0.917280.71.638[2, 7]1.2841921.41.638[7, 7]1.41.41.638   개발환경:..

알고리즘/BOJ 2024.05.05