https://www.acmicpc.net/problem/1074
1074번: Z
한수는 크기가 2N × 2N인 2차원 배열을 Z모양으로 탐색하려고 한다. 예를 들어, 2×2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다. N > 1인 경우, 배열을
www.acmicpc.net
한수는 크기가 2N × 2N인 2차원 배열을 Z모양으로 탐색하려고 한다. 예를 들어, 2×2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다.
N > 1인 경우, 배열을 크기가 2N-1 × 2N-1로 4등분 한 후에 재귀적으로 순서대로 방문한다.
다음 예는 22 × 22 크기의 배열을 방문한 순서이다.
N이 주어졌을 때, r행 c열을 몇 번째로 방문하는지 출력하는 프로그램을 작성하시오.
다음은 N=3일 때의 예이다.
Z 형태로 2X2 분할된 평면에서 탐색하며 이동한다.
분할정복으로 푸는 문제 (무식하게 완전탐색-DFS 로 돌릴 경우 시간초과 나서 찾아봤음)
https://mygumi.tistory.com/284
백준 1074번 Z :: 마이구미
이 글은 백준 알고리즘 문제 1074번 "Z" 을 풀이한다. 풀이 방법으 말하자면, 분할 정복 알고리즘이다. 분할 정복이란, 문제를 작은 부분으로 쪼개어 해결하는 방식이다. 문제 링크 - https://www.acmic
mygumi.tistory.com
설명이나 풀이는 해당 마이구미님 티스토리를 참고해서 작성했습니다.
'알고리즘' 카테고리의 다른 글
Array 내림차순 정렬 (0) | 2021.09.29 |
---|---|
소수 구하기 - Java (0) | 2021.09.29 |
프로그래머스 복서 정렬하기 JAVA (0) | 2021.09.17 |
2022 KAKAO 카카오 블라인드 코딩테스트 1차 후기 (0) | 2021.09.13 |
kakao 블라인드 코딩테스트 1차 - 합승택시 JAVA (0) | 2021.09.07 |