코딩 테스트(JAVA)(89)
-
💡 이진트리 순회(BFS: Breadth-First Search, 넓이우선탐색, 레벨탐색)
아래 그림과 같은 이진트리를 레벨탐색 연습하세요. 레벨 탐색 순회 출력 : 1 2 3 4 5 6 7 문제 분석 BFS는 최단거리탐색에 쓰입니다. 큐를 사용합니다. 루트 - 레벨 0 루트에서 한 번만에 갈 수 있는 노드 - 레벨 1 루트에서 두 번만에 갈 수 있는 노드 - 레벨 2 ... 레벨 0 다 탐색하고 레벨 1 다 탐색하고 레벨 2 다 탐색... 코드 구현 import java.util.*; class Node{ int data; Node lt, rt; public Node(int val) { data=val; lt=rt=null; } } public class Main{ Node root; public void BFS(Node root){ // Node객체 저장하는 큐 선언 Queue Q=new ..
2022.04.24 -
💡 부분집합 구하기(DFS)
자연수 N이 주어지면 1부터 N까지의 원소를 갖는 집합의 부분집합을 모두 출력하는 프로그램 을 작성하세요. ▣ 입력설명 첫 번째 줄에 자연수 N(1
2022.04.24 -
[백준 1292번] 쉽게 푸는 문제
https://www.acmicpc.net/problem/1292 1292번: 쉽게 푸는 문제 첫째 줄에 구간의 시작과 끝을 나타내는 정수 A, B(1 ≤ A ≤ B ≤ 1,000)가 주어진다. 즉, 수열에서 A번째 숫자부터 B번째 숫자까지 합을 구하면 된다. www.acmicpc.net 문제 동호는 내년에 초등학교를 입학한다. 그래서 동호 어머니는 수학 선행 학습을 위해 쉽게 푸는 문제를 동호에게 주었다. 이 문제는 다음과 같다. 1을 한 번, 2를 두 번, 3을 세 번, 이런 식으로 1 2 2 3 3 3 4 4 4 4 5 .. 이러한 수열을 만들고 어느 일정한 구간을 주면 그 구간의 합을 구하는 것이다. 하지만 동호는 현재 더 어려운 문제를 푸느라 바쁘기에 우리가 동호를 도와주자. 입력 첫째 줄에 구..
2022.04.24 -
피보나치 수열(재귀함수 이용)
1) 피보나치 수열을 출력한다. 피보나치 수열이란 앞의 2개의 수를 합하여 다음 숫자가 되는 수열이다. 2) 입력은 피보나치 수열의 총 항의 수 이다. 만약 7이 입력되면 1 1 2 3 5 8 13을 출력하면 된다. ▣ 입력설명 첫 줄에 총 항수 N(3
2022.04.24 -
팩토리얼
팩토리얼 자연수 N이 입력되면 N!를 구하는 프로그램을 작성하세요. 예를 들어 5! = 5*4*3*2*1=120입니다. ▣ 입력설명 첫 번째 줄에 자연수 N(1
2022.04.24 -
[백준 1978번] 소수 찾기
https://www.acmicpc.net/problem/1978 1978번: 소수 찾기 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. www.acmicpc.net 문제 주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오. 입력 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. 출력 주어진 수들 중 소수의 개수를 출력한다. 예제 입력 1 복사 4 1 3 5 7 예제 출력 1 복사 3 문제 분석 1. n을 입력받습니다. 2. n을 돌면서 숫자(num)를 받습니다. 3. 1 제외, 2 ~ num-1로 num을 나누어 0이 되면 소..
2022.04.23