본문 바로가기
반응형

알고리즘/백트래킹10

백준 9663번 : N-Queen java 이 문제는 N x N 사이즈의 체스판에 서로 공격하지 않게 퀸을 몇 개 놓을 수 있는지를 구하는 문제입니다. 퀸이 이동할 수 있는 공간은 위에 보이는 것과 같이 상 하 좌 우 각 방향의 대각선입니다. 이 문제를 풀기 위해서 퀸이 체스판의 어디 어디에 들어갈 수 있는지를 N이 4일 때를 예시로 보여드리겠습니다. 다음과 같이 퀸이 위치해 있을 떄 하얀 점이 있는 곳은 퀸이 갈 수 없습니다. 1열에 퀸이 왔으니 2열에 이제 새로운 퀸을 추가하고 퀸이 위치할 수 없는 위치를 흰 점으로 표시합니다. 다음 3열에 들어갈 수 있는 위치는 1개이니 그 자리에 퀸을 넣어줍니다. 이제 마지막 퀸까지 넣어주면 완성입니다. 이런 식으로 퀸이 들어갈 수 있는 자리들을 조건에 맞추어 찾으면 이 문제를 해결할 수 있습니다. imp.. 2022. 5. 25.
백준 14888번 : 연산자 끼워넣기 java 백준에서 백트래킹 항목에 해당하는 문제는 연산자 끼워넣기입니다. 이 문제는 숫자를 몇 개를 입력받을 것인지를 먼저 입력받은 후 그 사이즈만큼 숫자를 입력받으면 됩니다. 이 문제에서는 연산자를 '+', '-', '*', '/', 이 4개만 사용하므로 연산자를 저장할 배열은 4개의 공간이 필요할 것입니다. 추가 설명은 코드를 보면서 하겠습니다. import java.util.*; import java.io.*; public class Main{ static int[] num; static int N; static int min = Integer.MAX_VALUE; static int max = Integer.MIN_VALUE; public static void main(String[] args) throws.. 2022. 5. 24.
반응형