말랑한 하루

[BAEKJOON] 15651 N과 M 3 (Java) 본문

문제풀이/BAEKJOON Online Judge

[BAEKJOON] 15651 N과 M 3 (Java)

지수는말랑이 2021. 1. 21. 22:07
반응형

[ 핵심풀이 ]

 

무수히 많은 출력함수는 시간초과를 가져온다

다음을 사용해서 해결해야한다

Scanner + StringBuilder

BufferedReader + StringBuilder

[ 소스 코드 ]

import java.util.Scanner;

public class Solution {
    static int N;
    static int M;
    static int temp[] = new int[7];
	
    static StringBuilder sb = new StringBuilder();
	
    static void permutation(int cnt) {
        if (cnt == M) {
            for(int i=0;i<M;i++)
                sb.append(temp[i] + " ");
            sb.append("\n");
            return;
        }
        for (int i = 1; i <= N; i++) {
            temp[cnt] = i;
            permutation(cnt + 1);
        }
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        N = sc.nextInt();
        M = sc.nextInt();

        permutation(0);
        System.out.print(sb);
    }
}
반응형
Comments