백준 10974번: 모든 순열

최창효·2022년 6월 30일
0
post-thumbnail

문제 설명

접근법

  • 백트래킹으로 순열을 구현합니다.

정답

import java.util.*;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		BackT(0,N,new int[N], new boolean[N+1]);
	}

	public static void BackT(int depth, int N,int[] answer,boolean[] used) {
		if(depth == N) {
			StringBuilder sb = new StringBuilder();
			for (int i = 0; i < N; i++) {
				sb.append(answer[i]+" ");
			}
			System.out.println(sb.toString());
			return;
		}
		for (int i = 1; i <= N; i++) {
			if(!used[i]) {				
				answer[depth] = i;
				used[i] = true;
				BackT(depth+1,N,answer,used);
				used[i] = false;
			}
		}
	}
}
profile
기록하고 정리하는 걸 좋아하는 개발자.

0개의 댓글