cpp(304)
-
[백준 BOJ] 1920번 수 찾기 (C++/cpp)
문제 설명https://www.acmicpc.net/problem/1920 접근 방법 - 이분 탐색을 활용한 연산 문제백준의 1920번 문제는 이분 탐색을 활용하여 해결할 수 있는 문제이다.해당 문제는, 주어진 수열에 있어 특정 숫자가 수열에 포함되어 있는지를 구하여 정답으로 출력하면 되는 문제이다. 이 문제는 여러 방법으로 해결할 수 있으며, 필자는 그중 이분 탐색을 활용하여 해결을 시도해 보았다.이때 이분 탐색이란, 검색하는 범위를 절반씩 소거해 나가면서 특정 요소를 찾아나가는 탐색 알고리즘 중 하나이다.반드시 무작위로 배치된 것이 아닌 정렬된 수열에 대해서만 이분 탐색을 적용할 수 있기 때문에, 함께 참고하길 바란다.예시 입력으로 제시된 수열에 있어 5라는 숫자를 이분 탐색으로 찾아가는 과정을 위..
2025.08.31 -
[백준 BOJ] 31261번 НАМИСЛИХ СИ ЧИСЛО (C++/cpp)
문제 설명https://www.acmicpc.net/problem/31261 접근 방법 - 사칙연산의 기본 문제백준의 31261번 문제는 사칙연산을 활용하여 간단하게 해결할 수 있는 문제이다.해당 문제는, 미리 생각해 둔 숫자(x)에 대해 임의의 숫자 a로 연산을 취하여 임의의 결괏값 b라는 값이 나온다고 가정할 때 숫자 x에 대해 구하면 되는 문제이다.이때, 문제에서 제시하는 연산식은 아래와 같다.((x/a) - a)/a - a = b문제 지문에 대한 해석본 링크는 아래에 기재해 놓으니, 문제 해결에 함께 참고하면 되겠다.https://www.acmicpc.net/board/view/133851 필자의 경우에는 정말 원시적으로 나누고, 빼고, 나누고, 빼고를 반대로 뒤집어서 연산을 수행하였고, 이를 ..
2025.08.03 -
[백준 BOJ] 2167번 2차원 배열의 합 (C++/cpp)
문제 설명https://www.acmicpc.net/problem/2167 접근 방법 - 누적 합을 활용한 연산 문제백준의 2167번 문제는 누적 합의 원리를 활용하여 해결해야 하는 연산 문제이다.해당 문제는, 2차원 배열이 입력으로 주어질 때 특정 2개 지점 안에 있는 요소들의 합을 구하여 정답으로 출력해야 하는 문제이다.필자는 입력으로 주어지는 2차원 배열에 있어 각 행의 위치별로 누적합을 저장하는 배열을 따로 만들어서 문제를 해결해 보았다.예제 입력을 예시로 들자면, 아래 그림과 같은 누적 합 연산 결과를 저장하는 배열을 따로 구성하고자 한다. 여기에 더불어, 입력으로 주어지는 2개 지점에 대한 요소의 합 연산은 아래와 같이 진행할 예정이다.예제에서 주어지는 입력쌍 중 (1,3)~(2,3)에 대한..
2025.08.02 -
[백준 BOJ] 12851번 숨바꼭질 2 (C++/cpp)
문제 설명https://www.acmicpc.net/problem/12851 접근 방법 - 너비 우선 탐색(BFS) 응용문제백준의 12851번 문제는 BFS를 기반으로 구성된 연산 문제이다.해당 문제는, 수빈이가 1초 동안 현재 위치에서 +1, -1, *2 연산 값만큼 순간이동을 할 수 있을 때 숨어있는 동생을 찾는 데에 걸리는 최소 시간과 그 경우의 수를 구하여 출력해야 하는 문제이다. 필자는 너비 우선 탐색 알고리즘의 원리를 기반으로 수빈이가 갈 수 있는 영역에 대해 모두 연산해 보았다.일반적으로 BFS 연산에서는 큐 자료구조를 활용하는데, 수빈이의 현재 위치 및 수빈이가 갈 수 있는 위치에 대해 모두 +1, -1, *2 연산을 수행하여 되도록 넓게 확인해 보았다.이때 문제에서 요청하는 결괏값에는,..
2025.08.02 -
[백준 BOJ] 32326번 Conveyor Belt Sushi (C++/cpp)
문제 설명https://www.acmicpc.net/problem/32326 접근 방법 - 기초적인 사칙연산 문제백준의 32326번 문제는 기본적인 사칙연산을 통하여 비교적 쉽게 해결할 수 있는 문제이다.해당 문제는, 입력으로 주어지는 만큼 3종류의 접시에 담긴 초밥을 먹었을 때 지불해야 하는 총비용을 구하여 정답으로 출력하면 되는 문제이다.이때, 3종류의 접시에 대해 한 접시당 가격은 아래와 같다.빨간 접시(첫 번째 입력)의 초밥 가격 :: 3달러초록 접시(두 번째 입력)의 초밥 가격 :: 4달러파란 접시(세 번째 입력)의 초밥 가격 :: 5달러영어로 작성된 문제 지문에 대한 해석본은 아래 링크에 있으니, 문제 해결에 함께 참고하길 바란다.https://www.acmicpc.net/board/view..
2025.07.13 -
[백준 BOJ] 27332번 11月(November) (C++/cpp)
문제 설명https://www.acmicpc.net/problem/27332 접근 방법 - 기초적인 사칙연산 문제백준의 27332번 문제는 간단한 사칙연산을 활용하여 비교적 쉽게 해결할 수 있는 문제이다.해당 문제는, 입력으로 주어지는 A와 B에 대하여 "11월 A일의 B주일 후" 날짜가 11월에 속하는지에 대한 참/거짓을 정답으로 출력하면 되는 문제이다.해당 문제 지문의 해석본은 아래 링크에 있으니, 문제 해결에 함께 참고하면 좋을 것이다.https://www.acmicpc.net/board/view/120388 날짜 계산 문제 이긴 하나, 지에 있는 대로 11월 A일에 있어 B주일 후의 날이 11월에 속하는지에 대한 여부만 판별하면 되기 때문에 매우 간단하게 해결할 수 있을 것이다.필자의 경우에는 ..
2025.07.13