BOJ(368)
-
[백준 BOJ] 1546번 평균 (C언어)
문제 설명 https://www.acmicpc.net/problem/1546 1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net (자세한 예제는 위의 사이트를 통해 확인하길 바란다.) 접근 방법 - 문제의 설명대로 풀면 되는 수학 문제 백준의 1546번 문제는 문제의 설명만 잘 읽고 따라가면 무난하게 해결할 수 있는 문제이다. 다만, 예제들의 정답을 보면 소수점을 어디까지 출력해야 하는지 망설여질 것이다. 필자는 예제 2의 출력대로 소수점에 제한을 두지 않고 출력을 해보았는데 정답이 나왔다. 필자는 아래의 ..
2022.01.09 -
[백준 BOJ] 1475번 방 번호 (C언어)
문제 설명 https://www.acmicpc.net/problem/1475 1475번: 방 번호 첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 접근 방법 - 문자열을 이용한 문제 백준 1475번 문제는 숫자형이 아닌 문자열을 이용한 문제이다. 입력되는 값이 숫자이다 보니 혼동할 수도 있지만, 문제 상에선 결국 "스티커"의 숫자일 뿐이니 문자열을 이용하는 것이 더 수월할 것이다. 필자는 해당 문제를 풀 때 아래의 규칙을 찾았고 아래의 순서대로 코드를 작성하였다. 필자가 이용한 규칙 이 문제에서의 정답은 결국 가장 많이 사용된 숫자 스티커의 개수이다. 가장 많이 사용된 스티커의 숫자대로 스티커 세트를 준비하면 다른 숫자의 스티커..
2022.01.08 -
[백준 BOJ] 1330번 두 수 비교하기 (C언어)
문제 설명 https://www.acmicpc.net/problem/1330 1330번: 두 수 비교하기 두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성하시오. www.acmicpc.net 접근 방법 - 기본적인 수학적 비교 문제 백준의 1330번 문제는 단순한 숫자 비교 문제이다. 그저 2개의 숫자 크기를 비교해본 뒤, 이에 따라서 적절한 문자를 출력해주면 끝인 문제인 것이다. 필자는 아래의 순서대로 코드를 작성하여 문제를 해결하였다. 코드의 실행 순서 1) 2개의 숫자를 입력받기 (a, b) 2) 2개의 숫자 크기를 비교한다. a가 b보다 크다면 ">" a와 b가 같다면 "==" a가 b보다 작다면 ""); else if (a == b)printf("=="); else print..
2022.01.08 -
[백준 BOJ] 1292번 쉽게 푸는 문제 (C언어)
문제 설명 https://www.acmicpc.net/problem/1292 1292번: 쉽게 푸는 문제 첫째 줄에 구간의 시작과 끝을 나타내는 정수 A, B(1 ≤ A ≤ B ≤ 1,000)가 주어진다. 즉, 수열에서 A번째 숫자부터 B번째 숫자까지 합을 구하면 된다. www.acmicpc.net 접근 방법 - 정말 "나름 가볍게" 풀 수 있는 수학적 사고 문제 백준의 1292번 문제는 단순 수학적 사고력을 요구하는 문제이다. 문제의 범위가 비양심적으로 방대했다면 어려웠을 수도 있지만, 그렇지는 않아서 무난하게 풀 수 있었다. 필자는 아래의 규칙을 찾아내고 아래의 순서대로 코드를 작성하여 문제를 해결하였다. 밑의 후기도 한번 참고해보길 바란다. 필자가 이용한 규칙 (배열 번호 i인 배열 값 : cnt)..
2022.01.08 -
[백준 BOJ] 1259번 팰린드롬수 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/1259 1259번: 팰린드롬수 입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 1 이상 99999 이하의 정수가 주어진다. 입력의 마지막 줄에는 0이 주어지며, 이 줄은 문제에 포함되지 않는다. www.acmicpc.net 접근 방법 - 단순 문자열 연산 문제 백준의 1259번 문제는 문자열을 이용한 단순 연산 문제인 것으로 보인다. 위에서 언급하고 있는 팰린드롬수는 결국, 뒤집어도 원래의 숫자와 같은 숫자를 의미한다고 할 수 있다. 따라서 양 옆으로 숫자가 같으면 yes를 출력하고, 아니라면 no를 출력하면 된다. 필자는 아래의 순서대로 코드를 작성하여 문제를 해결하였다. 코드의 실행 순서 1) 무한 반복문을 통해서 입..
2022.01.08 -
[백준 BOJ] 1157번 단어 공부 (C언어)
문제 설명 https://www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 접근 방법 - 아스키코드 이용한 문자열 연산 문제 백준의 1157번 문제는 전형적인 아스키코드 문제이다. 다만 난이도가 그렇게 낮은 문제는 아닌 듯해 보인다. (문제 풀기에 앞서 아스키코드 값으로 A는 65, a는 97이란 걸 알아두자.) 필자는 해당 문제를 해결할 때, 각 26개의 알파벳 발생 빈도수를 따로 저장하는 배열을 별도로 선언하였다. 그리고 아래의 순서대로 코딩을 작성하였다. 아스키코드에 익숙하지 않다면 아래..
2022.01.07