본문 바로가기

ALGORITHM

백준 1010 다리놓기 (Java)

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);
		}
		
	}
}

'ALGORITHM' 카테고리의 다른 글

백준 6065 카잉 달력 (Java)  (0) 2023.01.30
백준 11047 동전 0 (Java)  (0) 2023.01.29
백준 1157 단어 공부 (Java)  (0) 2023.01.27
백준 8958 OX퀴즈 (Java)  (0) 2023.01.26
백준 1547 공 (Java)  (0) 2023.01.25