ALGORITHM

백준 1010 다리놓기 (Java)

공부하는_다온 2023. 1. 28. 22:27

1. 문제 링크

 

1010번: 다리 놓기

입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 < N ≤ M < 30)이 주어진다.

www.acmicpc.net

 

2. 문제 및 입출력예제

 

3. 문제 풀이

N개와 M개 중 경우의 수를 구하는 문제이다.

조합 문제로 N<=M이기 때문에 mCn을 구하면 된다.

 

4. 코드

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Main {
	public static void main(String[] args) throws Exception {
		Scanner sc = new Scanner(System.in);
		int T = sc.nextInt();
		for(int t=0;t<T;t++) {
			int N = sc.nextInt();
			int M = sc.nextInt();
			int result = 1;
			for(int i=1;i<=N;i++) {
				result = result * (M-i+1) / i;
			}
			System.out.println(result);
		}
		
	}
}