BOJ(372)
-
[백준 BOJ] 14425번 문자열 집합 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/14425 14425번: 문자열 집합 첫째 줄에 문자열의 개수 N과 M (1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)이 주어진다. 다음 N개의 줄에는 집합 S에 포함되어 있는 문자열들이 주어진다. 다음 M개의 줄에는 검사해야 하는 문자열들이 주어 www.acmicpc.net 접근 방법 - 맵을 활용한 문자열 탐색 문제 백준의 14425번 문제는 맵 자료구조를 활용하여 해결할 수 있는 문자열 탐색 문제이다. 해당 문제는, 검사하고자 하는 문자열을 하나씩 입력받을 때 특정 집합 속에 존재하는 문자열의 개수가 총 몇 개인지를 연산하여 출력해야 하는 문제이다. 맵이라는 자료 구조를 모른다면, 2개의 배열을 통하여 무작위로 비교하는 ..
2024.03.03 -
[백준 BOJ] 27110번 특식 배부 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/27110 27110번: 특식 배부 설날을 맞아 부대원들을 위해 특식으로 치킨을 주문했다. 후라이드 치킨, 간장치킨, 양념치킨을 각각 $N$마리씩 주문했고, $1$인당 치킨을 한 마리씩 배부하고자 한다. 최대한 많은 부대원에게 본 www.acmicpc.net 접근 방법 - 기초적인 사칙연산을 활용한 수학 문제 백준의 27110번 문제는 기초적인 사칙연산을 이용하여 해결할 수 있는 수학적 문제이다. 해당 문제는, 동일한 마릿수로 각 종류의 치킨들이 준비될 때 가장 선호하는 치킨을 배부받을 수 있는 병사의 총합을 구해서 출력해야 하는 문제이다. 해당 문제의 경우에는, 문제의 맥락만 잘 파악하였다면 비교적 쉽게 해결할 수 있는 문제로 예상된다..
2024.03.02 -
[백준 BOJ] 11441번 합 구하기 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/11441 11441번: 합 구하기 첫째 줄에 수의 개수 N이 주어진다. (1 ≤ N ≤ 100,000) 둘째 줄에는 A1, A2, ..., AN이 주어진다. (-1,000 ≤ Ai ≤ 1,000) 셋째 줄에는 구간의 개수 M이 주어진다. (1 ≤ M ≤ 100,000) 넷째 줄부터 M개의 줄에는 www.acmicpc.net 접근 방법 - 누적 합 알고리즘을 활용한 기초 문제 백준의 11441번 문제는 누적 합 알고리즘을 활용하여 해결해야 하는 문제이다. 해당 문제는, 주어지는 수열에 대하여 특정 구간에 있는 숫자들의 총합들을 구하여 출력해야 하는 문제이다. 일일이 탐색하며 구하는 방법이 있긴 하지만, 테스트 케이스 및 수열의 길이가 크..
2024.02.17 -
[백준 BOJ] 5063번 TGN (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/5063 5063번: TGN 첫째 줄에 테스트 케이스의 개수 N이 주어진다. 다음 N개의 줄에는 3개의 정수 r, e, c가 주어진다. r은 광고를 하지 않았을 때 수익, e는 광고를 했을 때의 수익, c는 광고 비용이다. (-106 ≤ r,e ≤ 106 www.acmicpc.net 접근 방법 - 기초적인 사칙연산을 활용한 수학 문제 백준의 5063번 문제는 기초적 사칙연산을 통해 해결할 수 있는 수학적 문제이다. 해당 문제는, 광고 비용(c) 및 광고를 했을 때(e)와 안 했을 때(r)의 수익이 각 케이스마다 입력으로 주어질 때 광고를 해야 하는지를 정답으로 출력해야 하는 문제이다. 문제의 맥락을 잘 파악하였다면 매우 쉽게 식을 세우고..
2024.02.17 -
[백준 BOJ] 5523번 경기 결과 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/5523 5523번: 경기 결과 A와 B가 게임을 한다. 게임은 N번의 라운드로 이루어져 있다. 각 라운드에서는, 더 많은 점수를 얻은 사람이 그 라운드의 승자가 된다. 즉, A의 점수가 B의 점수보다 크면 i번째 라운드는 A의 승리 www.acmicpc.net 접근 방법 - 비교 연산을 활용한 수학 문제 백준의 5523번 문제는 두 숫자 간 크기의 비교 연산을 주요로 다루어서 해결해야 하는 문제이다. 해당 문제는, A와 B가 여러 라운드에 걸쳐 경기를 진행하였을 때 A와 B가 각각 우승한 횟수를 구하여 정답으로 출력해야 하는 문제이다. 경기를 수행한 횟수의 크기만큼, 각 입력으로 주어지는 두 점수를 비교하여 높은 점수를 취한 사람의 승..
2024.02.11 -
[백준 BOJ] 24313번 알고리즘 수업 - 점근적 표기 1 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/24313 24313번: 알고리즘 수업 - 점근적 표기 1 f(n) = 7n + 7, g(n) = n, c = 8, n0 = 1이다. f(1) = 14, c × g(1) = 8이므로 O(n) 정의를 만족하지 못한다. www.acmicpc.net 접근 방법 - 함수에 대한 수학적 이해 문제 백준의 24313번 문제는 함수에 대하여 수학적인 이해를 요구하고 있는 문제이다. 해당 문제는, 문제에 있는 빅오표기법에 있어 주어진 입력값에 대하여 식이 성립되는지를 정답으로 출력해야 하는 문제이다. 복잡하게 설명되어 있지만, 각 예제 입출력에 있는 힌트들만 유심히 보면 쉽게 해결할 수 있는 문제이다. 아래와 같이 식을 구성하고 각 입력값을 적용하면 ..
2024.02.10