문제 링크 : https://www.acmicpc.net/problem/11050
5 2
10
수학적 사고를 이용한 문제였다.
이항 계수의 공식을 알고 이를 프로그래밍 언어로 풀어낼 수 있으면 해결 가능한 부분이었다.
분모와 분자 부분을 따로 구해서 나누는 방식으로 풀이했다.
package Math;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
//이항 계수 1
public class p11050 {
public static void main(String[] args)throws Exception{
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 mN=1;
int mK=1;
// n!/K!(n-k)!
for(int i=N; i>K; i--){
mN *= i;
}
for(int i=1; i<=N-K; i++){
mK *= i;
}
int result = mN/mK;
System.out.print(result);
}
}
우하핫.. 이항 계수.. 너무 오랜만~ ㅎ 공식 알아서 쉬웠던..! ㅎㅎ