Notice
Recent Posts
Recent Comments
Link
뮁이의 개발새발
[JAVA] 백준 15651 N과 M(3) 본문
매번 쓰는 순열 메소드를 사용해서 풀었음.
근데 시간초과가 나서 엥 하면서 질문을 찾아봤는데 어떤사람이 StringBuilder 썼다고 해서 반신반의하면서 썼더니 해결됨.... 더 좋은방법이 있을것같기도 하다
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
// StringBuilder 쓰니 시간초과 해결됨..
public class bj15651 {
static int[] numbers;
static int N, M;
static StringBuilder sb = new StringBuilder();
public static void main(String[] args) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(in.readLine());
N = Integer.parseInt(st.nextToken());
M = Integer.parseInt(st.nextToken());
numbers = new int[M];
permutation(0, 0);
System.out.println(sb);
}
static void permutation(int cnt, int flag) {
if (cnt == M) {
for (int i = 0; i < numbers.length; i++) {
sb.append(numbers[i] + " ");
}
sb.append("\n");
return;
}
for (int i = 1; i <= N; i++) {
numbers[cnt] = i;
permutation(cnt + 1, flag | 1 << i);
}
}
}
'Algorithm' 카테고리의 다른 글
[JAVA] 백준 11660 구간 합 구하기 5 (DP) (0) | 2021.11.30 |
---|---|
[JAVA] 백준 7569 토마토 (BFS) (0) | 2021.11.09 |
[JAVA] 백준 4673 셀프 넘버 (0) | 2021.11.09 |
[JAVA] 백준 14499 주사위 굴리기 (0) | 2021.11.08 |
[JAVA] 백준 5567 결혼식 (0) | 2021.10.19 |
Comments