View
๋ฐ์ํ
๋ฌธ์
N์ด ์ฃผ์ด์ก์ ๋, 1๋ถํฐ N๊น์ง์ ์๋ก ์ด๋ฃจ์ด์ง ์์ด์ ์ฌ์ ์์ผ๋ก ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ N(1 โค N โค 8)์ด ์ฃผ์ด์ง๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค๋ถํฐ N!๊ฐ์ ์ค์ ๊ฑธ์ณ์ ๋ชจ๋ ์์ด์ ์ฌ์ ์์ผ๋ก ์ถ๋ ฅํ๋ค.
์์ ์ ๋ ฅ 1
3
์์ ์ถ๋ ฅ 1
1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1
๊ทธ๋ฅ ์์ด
๐คฆโโ๏ธ My Solution
package ์์ด์กฐํฉ;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class BJ_10974 {
static int N;
static boolean check[];
static int select[];
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
N = Integer.parseInt(br.readLine());
check = new boolean[N];
select = new int[N];
permu(0);
}
static public void permu(int cnt) {
// ๊ธฐ์ ์กฐ๊ฑด
if (cnt == N) {
for (int i = 0; i < N; i++) {
System.out.print(select[i] + " ");
}
System.out.println();
return;
}
for (int i = 0; i < N; i++) {
if (check[i])
continue;
check[i] = true;
select[cnt] = i + 1;
permu(cnt + 1);
check[i] = false;
}
}
}
๋ฐ์ํ
'์๊ณ ๋ฆฌ์ฆ > ์ฝ๋ฉํ ์คํธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BJ] 1182๋ฒ: ๋ถ๋ถ์์ด์ ํฉ (0) | 2022.08.30 |
---|---|
[BJ] 2003๋ฒ: ์๋ค์ ํฉ2 (Java) (0) | 2022.08.30 |
[BJ] 1987๋ฒ: ์ํ๋ฒณ(Java) (0) | 2022.08.30 |
[BJ] 1206: DFS์ BFS(Java) (0) | 2022.08.30 |
[SWEA] 1247๋ฒ: ์ต์ ๊ฒฝ๋ก(Java) (0) | 2022.08.30 |
reply