문제
자연수 N 과 정수 K 가 주어졌을 때 이항 계수 (NK) 를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 N 과 K 가 주어진다. (1 ≤ N ≤ 10, 0 ≤ K ≤ N )
출력
(NK) 를 출력한다.
예제 입력 1
5 2
예제 출력 1
10
import java.io.*;
import java.util.*;
public class Main {
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());
int bunza = factorial(N);
int bunmo = factorial(K) * factorial(N - K);
System.out.println(bunza / bunmo);
}
public static int factorial(int a) {
int sum = 1;
for(int i=2; i<=a; i++) {
sum *= i;
}
return sum;
}
}
'Coding Test > 백준[JAVA]' 카테고리의 다른 글
[실버 2] 9184번 신나는 함수 실행 (3) | 2025.06.11 |
---|---|
[브론즈 1] 24416번 알고리즘 수업 - 피보나치 수 1 (0) | 2025.06.11 |
[브론즈 5] 27433번 팩토리얼 2 (1) | 2025.06.10 |
[브론즈 4] 24723번 녹색거탑 (0) | 2023.10.13 |
[브론즈 4] 15439번 베라의 패션 (0) | 2023.10.13 |