티스토리 뷰

Algorithm

[백준 11050번/자바] 이항 계수 1

도도고영 2023. 4. 23. 15:10


이항 계수가 뭔지 몰라서 우선 이해할 수 있는 선까지는 정리를 해봄. 그래도 반 정도는 이해한거 같고 마지막에 읽어본 이 블로그(https://st-lab.tistory.com/159)가 궁금했던 부분 이해하는데 도움이 많이 됐다. 

사실 이항 계수가 이런거고 저런거고를 떠나서 그냥 위 점화식을 코드로 구현하면 되긴하지만~


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class BJ11050 {
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine(), " ");
		int n = Integer.parseInt(st.nextToken());
		int k = Integer.parseInt(st.nextToken());
		System.out.println(binomialCoefficient(n, k));
	}
	
	static int factorial(int n) {
		return n > 1 ? n * factorial(n - 1) : 1; 
	}
	
	static int binomialCoefficient(int n, int k) {
		return k < 0 || k > n ? 0 : factorial(n) / (factorial(k) * factorial(n - k));
	}
}

메모리제이션도 사용하고 할 수 있었겠지만... 시간이 없으니 후다닥 이렇게만 끝내는걸로!

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함