재귀7 [Java] 백준 2447 : 별 찍기 -10 https://www.acmicpc.net/problem/2447 2447번: 별 찍기 - 10 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 www.acmicpc.net 문제를 이해하기 위해서 예제 출력을 분해해 봤다. 크기가 3(=3 ¹)일 때는 가운데 공백이 있고, 가운데를 제외한 모든 칸에 별이 있는 모양이다. 그리고 N이 3보다 클 경우, 크기 N의 패턴은 공백으로 채워진 가운데의 (N/3) ×(N/3) 정사각형을 크기 N/3의 패턴으로 둘러싼 형태이다. 예를 들어, N = 3²=9일때, 가운데에 3*3의 공백이 있고 그 주위를 .. 코딩테스트/백준 2023. 2. 22. [Java] 백준 1074 : Z https://www.acmicpc.net/problem/1074 1074번: Z 한수는 크기가 2N × 2N인 2차원 배열을 Z모양으로 탐색하려고 한다. 예를 들어, 2×2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다. N > 1인 경우, 배열을 www.acmicpc.net 2의 N제곱 사이즈의 배열에서 (r,c)을 몇번째로 방문했는지 묻는 문제이다. 1. (r,c)의 위치를 구분했다. z모양으로 움직이는 순서대로 왼쪽 위/ 오른쪽 위/왼쪽 아래/ 오른쪽아래 어디에 있는지 찾는다. 2. 해당하는 위치에서 가장 앞에 있는 위치의 순서값을 cnt에 합한다. 여기서 가장 앞에 위치한 것은 각 0, 4,8,12를 의미한다. 3. 이 방법을 반복해서 작동하도록 재귀하.. 코딩테스트/백준 2023. 2. 15. [Java] 백준 1992 : 쿼드트리 https://www.acmicpc.net/problem/1992 1992번: 쿼드트리 첫째 줄에는 영상의 크기를 나타내는 숫자 N 이 주어진다. N 은 언제나 2의 제곱수로 주어지며, 1 ≤ N ≤ 64의 범위를 가진다. 두 번째 줄부터는 길이 N의 문자열이 N개 들어온다. 각 문자열은 0 또 www.acmicpc.net 쿼드를 압축하는 방법은 간단하다. 가지고 있는 모든 수가 같을 때, 같은 수로 압축을 하면 된다. 예를 들어, 이렇게 주어졌을 때, 위 배열을 하나의 덩어리로 보았을 때 모든 수가 같지 않다. 그래서 압축을 할 수 없다. 압축을 하지 못하면 사이즈를 행, 열을 반으로 나누어 살펴본다. 이렇게 4개로 나누었을 때 각각을 하나의 덩어리로 보면 같은 수로만 이루어진 부분이 있다. 이는 압축.. 코딩테스트/백준 2023. 2. 9. [Java] 백준 1991 : 트리 순회 https://www.acmicpc.net/problem/1991 1991번: 트리 순회 첫째 줄에는 이진 트리의 노드의 개수 N(1 ≤ N ≤ 26)이 주어진다. 둘째 줄부터 N개의 줄에 걸쳐 각 노드와 그의 왼쪽 자식 노드, 오른쪽 자식 노드가 주어진다. 노드의 이름은 A부터 차례대로 알파 www.acmicpc.net import java.io.*; public class Main { static class Node{ char value; Node left; Node right; Node(char value, Node left, Node right){ this.value = value; this.left = left; this.right = right; } }//class Node static int.. 코딩테스트/백준 2023. 2. 7. [Java] 백준 11729 : 하노이 탑 이동 순서 https://www.acmicpc.net/problem/11729 11729번: 하노이 탑 이동 순서 세 개의 장대가 있고 첫 번째 장대에는 반경이 서로 다른 n개의 원판이 쌓여 있다. 각 원판은 반경이 큰 순서대로 쌓여있다. 이제 수도승들이 다음 규칙에 따라 첫 번째 장대에서 세 번째 장대로 www.acmicpc.net import java.util.*; public class Main { static StringBuilder sb = new StringBuilder(); public static void main(String[] args){ Scanner sc = new Scanner(System.in); int N=sc.nextInt(); /*하노이 횟수 구하는 공식 - hanoi(N)=hanoi.. 코딩테스트/백준 2023. 2. 4. 백준 2630 : 색종이 만들기 _자바 Java https://www.acmicpc.net/problem/2630 2630번: 색종이 만들기 첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다. www.acmicpc.net check(시작X,시작Y,나눠진 크기) import java.io.*; import java.util.*; public class Main { static int[][] arr; static int white=0,blue=0; public static void main(String[] args) throws IOException{ BufferedReader br = ne.. 코딩테스트/백준 2023. 1. 30. 백준 6603 : 로또 _자바 Java https://www.acmicpc.net/problem/6603 6603번: 로또 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있다. 첫 번째 수는 k (6 i=0, check[0] = true; f(1,1); f(1,1) -> i=1, check[1] = true; f(2,2); f(2,2) -> i=2, check[2] = true; f(3,3); f(3,3) -> i=3, check[3].. 코딩테스트/백준 2023. 1. 28. 이전 1 다음