백준(371)
-
[백준 BOJ] 2439번 별 찍기 - 2 (C언어)
문제 설명 https://www.acmicpc.net/problem/2439 2439번: 별 찍기 - 2 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오. www.acmicpc.net 접근 방법 - 이중 반복문을 이용한 기본 문제 (별 찍기-1 문제의 변형) 백준의 2439번 문제는 이중 반복문을 응용하는 문제이며, 이는 별 찍기-1 문제의 변형 문제이기도 하다. 이런 문제에 아직 많이 익숙하지 않다면 아래의 링크를 참고해보는 편이 좋을 것이다. https://smary-it.tistory.com/23 [백준 BOJ] 2438번 별 찍기-1 (C언어) 문제 설명 https://www.acmicpc.net/pr..
2022.01.15 -
[백준 BOJ] 2438번 별 찍기 - 1 (C언어)
문제 설명 https://www.acmicpc.net/problem/2438 2438번: 별 찍기 - 1 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 www.acmicpc.net 접근 방법 - 이중 반복문을 이용한 기본 문제 백준의 2438번 문제는 이중 반복문을 응용하는 기본 문제인, 별 찍기 문제이다. 이 문제를 풀기 위해선, 최소 반복문의 작동 원리는 알아야 한다고 생각한다. 필자는 아래처럼 코드를 작성하여 문제를 해결하였다. 기본적인 예제이니 꼭 참고하길 바란다. 코드의 실행 순서 1) 숫자를 입력받는다. 2) 이중 반복문을 실행한다. 여기서 i는 행, j가 열이라 생각하고, 한 행의 출력이 모두 끝난 뒤에 다음 행을 출력하는 식으로 코드를 작성한다. 이에 따..
2022.01.13 -
[백준 BOJ] 2303번 숫자 게임 (C언어)
문제 설명 https://www.acmicpc.net/problem/2303 2303번: 숫자 게임 N명이 모여 숫자 게임을 하고자 한다. 각 사람에게는 1부터 10사이의 수가 적혀진 다섯 장의 카드가 주어진다. 그 중 세 장의 카드를 골라 합을 구한 후 일의 자리 수가 가장 큰 사람이 게임을 이 www.acmicpc.net 접근 방법 - 브루트포스 알고리즘을 이용한 연산 문제 백준의 2303번 문제는 브루트포스 알고리즘을 이용해서 해결해야 하는 문제이다. 여기서 브루트포스 알고리즘이란, 모든 경우의 수를 감안하며 해답을 얻어내는 알고리즘을 뜻한다. 모든 경우의 수를 감안하기 때문에 그만큼 실행 속도가 느리고 코드의 가독성도 떨어진다. 하지만 문제의 알고리즘 분류에 브루트포스 알고리즘만 있는 걸 봐선 이..
2022.01.13 -
[백준 BOJ] 2028번 자기복제수 (C언어)
문제 설명 https://www.acmicpc.net/problem/2028 2028번: 자기복제수 어떤 자연수 N을 제곱했을 때, 그 제곱수의 맨 뒷자리에 원래의 수 N이 다시 나타나면, 우리는 그 수 N을 자기복제수라고 한다. 예를 들면, 5의 제곱은 52는 25이고 25의 맨 뒷자리에 원래의 수 5가 www.acmicpc.net 접근 방법 - 단순 수학적 사고력을 요구하는 문제 백준 2028번 문제는 간단한 수학적 사고력을 요구하는 문제인 것으로 확인된다. 필자의 경우엔, 문제에 기술되어있는 입력되는 수 n의 범위를 참고하며 3가지의 경우로 나누어보았다. - n이 100 이상이면 n은 3 자릿수이다. 따라서 n^2에 1000으로 나머지 연산자 취하여 뒤의 세 자릿수만 떼어놓는다. - n이 10 이상..
2022.01.13 -
[백준 BOJ] 1978번 소수 찾기 (C언어)
문제 설명 https://www.acmicpc.net/problem/1978 1978번: 소수 찾기 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. www.acmicpc.net 접근 방법 - 소수의 기본적인 정의에 대한 수학 문제 백준 1978번 문제는 소수의 기본적인 의미에 대해서 묻고 있는 수학적 사고력 문제이다. 어떤 숫자에 있어서, 나누어 떨어지는 숫자, 즉 약수가 1과 자기 자신 뿐인 숫자를 소수라고 부른다. 필자는 이 기본적인 정의에 중점으로 맞추어 문제를 해결해보려 하였다. 사실 노가다로 뛰어보았던 거지만 필자는 아래와 같은 순서로 코드를 작성하였고 문제를 해결하였다. 코드의 실행 순서 1) 입력받을 숫자의 개수와 ..
2022.01.11 -
[백준 BOJ] 1935번 후위 표기식2 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/1935 1935번: 후위 표기식2 첫째 줄에 피연산자의 개수(1 ≤ N ≤ 26) 가 주어진다. 그리고 둘째 줄에는 후위 표기식이 주어진다. (여기서 피연산자는 A~Z의 영대문자이며, A부터 순서대로 N개의 영대문자만이 사용되며, 길이 www.acmicpc.net 접근 방법 - 전형적인 스택 응용문제 백준 1935번 문제는 스택의 대표 유형이라 할 수 있는 후위 표기식 문제이다. 필자는 후위식에 있어 변수에 해당하는 문자를 만나면 스택에 푸시하고 연산자를 만나면 스택에 저장되어있는 변수를 꺼내어 연산하는 식으로 코드를 구성하였다. 숫자는 별개의 배열에 저장해둔 뒤, 변수를 대신해 스택에 푸시하도록 하였다. 추가로, 예제들의 정답들이 모..
2022.01.11