PS(373)
-
[백준 BOJ] 1100번 하얀 칸 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/1100 1100번: 하얀 칸 체스판은 8×8크기이고, 검정 칸과 하얀 칸이 번갈아가면서 색칠되어 있다. 가장 왼쪽 위칸 (0,0)은 하얀색이다. 체스판의 상태가 주어졌을 때, 하얀 칸 위에 말이 몇 개 있는지 출력하는 프로그램 www.acmicpc.net (자세한 예제는 사이트를 통해서 확인해보시길) 접근 방법 - 문자형을 이용한 수학적 사고 문제 백준의 1100번 문제는 수학적 사고력을 요구하는 문제이지만 이번엔 char형, 즉 문자형을 주로 다루는 문제였다. 문제에 나와있는 "체스판"이라는 것은 검은색 칸과 하얀색 칸이 번갈아서 배치된 판이다. 필자는 이러한 규칙적인 배치를 이용해, 문자열 배열을 통하여 문제를 해결하였다. 필자는 ..
2022.01.05 -
[백준 BOJ] 1085번 직사각형에서 탈출 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/1085 1085번: 직사각형에서 탈출 한수는 지금 (x, y)에 있다. 직사각형은 각 변이 좌표축에 평행하고, 왼쪽 아래 꼭짓점은 (0, 0), 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램 www.acmicpc.net 접근 방법 - 간단한 수학적 사고 문제 백준의 1085번 문제 또한 단순 수학적 사고력을 요구하는 문제인 것으로 보인다. 필자는 아래의 순서대로 연산을 진행하며 코드를 작성하였다. 코드의 실행 순서 1) 각 자연수 4개 입력받기 (임의의 점의 좌표와 (0,0)과 직사각형을 이루는 점의 좌표) 2) 가로선 / 세로선 상에서의, 임의의 점과 직사각형 경계선과의 최소 거리..
2022.01.05 -
[백준 BOJ] 1075번 나누기 (C언어)
문제 설명 https://www.acmicpc.net/problem/1075 1075번: 나누기 첫째 줄에 N, 둘째 줄에 F가 주어진다. N은 100보다 크거나 같고, 2,000,000,000보다 작거나 같은 자연수이다. F는 100보다 작거나 같은 자연수이다. www.acmicpc.net 접근 방법 - 간단한 수학적 사고 문제 백준의 1075번 문제는 단순 수학적 사고력을 요구하는 문제인 것으로 보인다. 필자는 아래의 순서대로 연산을 진행하며 코드를 작성하였다. 코드의 실행 순서 1) 각 자연수 2개 입력받기 (n: 피제수 역할 / f: 제수 역할) 2) n에 나머지 연산자를 수행하여 십의 자릿수와 일의 자릿수를 0으로 정리한다. 3) 임의로 변수를 2개 만든 뒤, 이중 반복문과 적절한 사칙연산을 통..
2022.01.05 -
[백준 BOJ] 1012번 유기농 배추 (Java)
문제 설명 https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net 접근 방법 - 깊이 우선 탐색 (DFS) 백준의 1012번 문제는 DFS 및 BFS 문제이다. 필자는 DFS로 문제를 해결하였다. 필자는 아래의 흐름대로 규칙을 설정하고 코드를 작성해보았다. 필자는 배열을 이용할 시, 아래의 규칙을 정해두고 배열의 값을 바꾸었다. 0 : 배추가 없음 1 : 배추가 있음 & 지렁이가 방문하지 않음 2 : 배추가 있음 & 지렁이가 이미 방문함 코드의 실행 순서 1) 테..
2022.01.05 -
[백준 BOJ] 1008번 A/B (C언어)
문제 설명 https://www.acmicpc.net/problem/1008 1008번: A/B 두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 접근 방법 - 매우 기본적인 연산 문제, 그러나 설명 때문에 조금 혼란스러웠다 백준의 1008번 문제는 사실 기본적인 나눗셈 몫 연산 문제이긴 했다. 하지만 예제에 적혀있던 설명과 그에 대한 예제1 때문에, 풀고 난 뒤에도 혼란스러운 문제였다. ("10^(-9) 이하의 오차를 허용한다는 말은 꼭 소수 9번째 자리까지만 출력하라는 뜻이 아니다.") 나눗셈 연산은 당연히 쉽게 할 수 있었지만 출력이 어떻게 나와야 정답이 나오는 것인지 알 수 없었기 때문이다. 결론적으로, 실수형 결괏값을 소수점 9번째까지 출력..
2022.01.04 -
[백준 BOJ] 1001번 A-B (C언어)
문제 설명 https://www.acmicpc.net/problem/1001 1001번: A-B 두 정수 A와 B를 입력받은 다음, A-B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 접근 방법 - 매우 기본적인 연산 문제 백준의 1001번 문제도 1000번의 A+B 문제와 마찬가지로 매우 기본적인 문제이다. 이 또한 개개인이 사용하는 언어의 기본 문법만 잘 인지하고 있다면 매우 쉽게 풀 수 있다. 필자는 이번에도 변수 선언 -> 입력받기-> 결괏값 바로 출력 순으로 작성하였다. (여담이지만, 필자가 속해있는 프로그래밍 오픈챗방 멤버분들이 왜 굳이 앞에 전처리기를 2개나 쓰냐고 물어왔다. 그냥 필자가 C/C++로 코딩할 때 늘 달아놓는 전처리기이다. 입력 에러 뜰 때마다 작성하기 귀찮아..
2022.01.04