on
Baekjoon15651: N과 M(3)
Baekjoon15651: N과 M(3)
N과 M (3)
1 초 512 MB 29116 19087 14588 65.914%
문제 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 M개를 고른 수열
같은 수를 여러 번 골라도 된다. 입력 첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 7) 출력 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다.
풀이
어떤 조건 없이 반복문을 통해 계속 재귀호출을 하면 된다. 하지만 System.out.print(); 를 사용할 경우 시간초과(1초 경과)되기 때문에 버퍼를 통한 출력으로 바꿔준다.
import java.io.*; import java.util.*; public class Main { static boolean[] arr; static int[] record; static BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out)); static void sequence(int N, int M, int Depth) throws IOException { if(Depth==M) { for(int i=0; i
"); return; } for(int i=1; i
from http://devyoseph.tistory.com/154 by ccl(A) rewrite - 2021-11-11 17:01:52