본문 바로가기

컴퓨터

(300)
백준 알고리즘 2588번: 곱셈 [C++] 문제 출처: www.acmicpc.net/problem/2588 2588번: 곱셈 첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다. www.acmicpc.net 1. 코드 2. 풀이 아래 풀이 과정은 예제 입력으로 예시를 들겠다. n1 = A * (B % 10); 위 코드에서 B % 10는 1의 자리수만 남기 때문에 예제 입력을 예시로 든다면 385 % 10 = 5가 된다. 그리고 A(472)를 곱하면 2360이 나온다. n2 = A * ((B % 100) - (B % 10)) / 10; ((B % 100) - (B % 10)) / 10은 10의 자리수를 도출하기 위해서 사용되었는데 ((385 % 100) - (385 % 10)) / 10 = (85 - 5) /..
백준 알고리즘 10430번: 나머지 [C++] 문제 출처: www.acmicpc.net/problem/10430 10430번: 나머지 첫째 줄에 A, B, C가 순서대로 주어진다. (2 ≤ A, B, C ≤ 10000) www.acmicpc.net 1. 코드 2. 풀이 cout으로 출력을 하는데 출력 내용은 문제에 있는 그대로 쓰는데 1가지만 바꾸면 된다. ×를 *로 바꾸기만 하면 된다. 그 이유는 곱하기를 할 때 사용하는 것은 x가 아닌 *이기 때문이다.
백준 알고리즘 10869번: 사칙연산 [C++] 문제 출처: www.acmicpc.net/problem/10869 10869번: 사칙연산 두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오. www.acmicpc.net 1. 코드 2. 풀이 cout를 사용할 때 endl 혹은 \n을 사용하면 줄 바꿈을 할 수 있다. 그래서 그것을 이용해서 한 줄로 출력했다. 추가적으로 A / B를 할 때는 A를 B로 나누었을 때 몫이 나오게 되고 A % B를 하게 되면 A를 B로 나누었을 때 나머지가 나오게 된다.
백준 알고리즘 1008번: A/B [C++] 문제 출처: www.acmicpc.net/problem/1008 1008번: A/B 두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 1. 코드 (예제 1 실행) (예제 2 실행) 2. 풀이 cout.precision(10); 나머지 부분에 대해서는 잘 알고 위에 있는 코드 부분에 대해 설명하겠다. 위 코드는 출력 시 큰 자리부터 10자리를 출력하겠다는 말이다. 만약 가로 안에 숫자가 3이라고 하면 출력시 큰 자리가 나온다 예를 들어 설명하겠다. #include using namespace std; int main() { double A = 1.2345678912; cout.precision(10); cout
백준 알고리즘 1914번: 하노이 탑 [C++] 문제 출처: www.acmicpc.net/problem/1914 1914번: 하노이 탑 세 개의 장대가 있고 첫 번째 장대에는 반경이 서로 다른 n개의 원판이 쌓여 있다. 각 원판은 반경이 큰 순서대로 쌓여있다. 이제 수도승들이 다음 규칙에 따라 첫 번째 장대에서 세 번째 장대로 www.acmicpc.net 1. 코드 (실행) 2. 풀이 우선 하노이 탑에 대한 알고리즘에 대해 설명하겠다. 하노이 탑의 알고리즘은 재귀 함수를 이용하여 풀었는데 재귀 함수에 대해 너무 어렵게 접근할 필요가 없고, 실행 순서에 대해 정확히 알려고 하지 않아도 된다. 본질에 집중해야 한다. 우선 하노이 탑이 움직이게 되는 조건들을 살펴보자. 그림 - 4에서 7단계를 보면 제일 마지막 원판이 남았을 때는 기둥 1에서 기둥 3으로 ..
알고스팟(Algospot): 피크닉(PICNIC) [C++] 문제 출처: algospot.com/judge/problem/read/PICNIC algospot.com :: PICNIC 소풍 문제 정보 문제 안드로메다 유치원 익스프레스반에서는 다음 주에 율동공원으로 소풍을 갑니다. 원석 선생님은 소풍 때 학생들을 두 명씩 짝을 지어 행동하게 하려고 합니다. 그런데 서로 algospot.com 1. 코드 (실행) 2. 풀이 -문제 설명 우선 이 문제는 개인적으로 문제부터 이해하기가 많이 힘든 문제였다. 그렇기 때문에 우선 문제에 대해 먼저 알아보자. 예제 입력에서 학생의 수를 4라고 하면 친구 쌍의 수가 6이라고 하면 0 1 1 2 2 3 3 0 0 2 1 3가 순서대로 입력되었는데 친구 쌍의 수는 6이라는 의미는 실질적으로 12명이 있다는 말이다. 그렇기에 12개의..
백준 알고리즘 10172번: 개 [C++] 1. 문제 문제 출처: www.acmicpc.net/problem/10172
알고스팟(algospot): 보글 게임(BOGGLE) [C++] 문제 출처: www.algospot.com/judge/problem/read/BOGGLE algospot.com :: BOGGLE 보글 게임 문제 정보 문제 보글(Boggle) 게임은 그림 (a)와 같은 5x5 크기의 알파벳 격자인 게임판의 한 글자에서 시작해서 펜을 움직이면서 만나는 글자를 그 순서대로 나열하여 만들어지는 영어 www.algospot.com 1. 코드 (실행) 2. 풀이 이 문제는 반복문으로 풀 수 있겠지만 그렇게 된다면 코드가 굉장히 난잡하게 되거나 알아볼 수 없게 되기 때문에 재귀 함수로 구성하였다. 그리고 조건문은 다음과 같다. 범위 초과할 경우, 이미 확인한 경우, 보드판과 글자가 일치하는지, 그리고 인접한 8칸 검사를 할 때 성공적으로 1이 나오는지 등의 경우를 확인했는데 이 ..