본문 바로가기

백준 문제풀기/JAVA

[백준 1010 JAVA 자바] 다리 놓기

서쪽에서 동쪽으로 다리를 연결합니다 

N<=M이니깐 다행히 동쪽 포인트가 더 많습니다

 

한국의 이과 고등학생이라면

한눈에 풀이를 생각할 수 있는

간단한 조합 문제입니다

 

m개중에 n개를 고르는 경우

바로 mCn 이죠?

 

 

mCn 의 공식까지 찾았으니

코딩으로 옮깁시다!

 

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);

		int n = scan.nextInt();
		
		long[] arr = new long[n];

		for(int i=0;i<n;i++) {
			long a =scan.nextInt();
			long b =scan.nextInt();
			arr[i]=combi(b,a);
		}
		
		for(int i=0;i<n;i++) {
			System.out.println(arr[i]);
		}
	}

	public static long combi(long b, long a) {

		long ans =1;
		
		for(int i=0;i<(int)a;i++) {
			ans *= b-i;
			ans /= i+1;
		}
		return ans;
	}
}

 

 

  • public static void main(String[] args) {
        코드를 실행 했을 때에는
        이 안에 들어있는 부분이 실행됩니다
    }

  • public static long combi(long b, long a)
    이부분은 '함수'를 만드는 부분입니다

  • (괄호) 안에 재료를 넣고
    결과물의 형태(long), 예상 결과물(return)을 이용해
    함수를 만듭니다

  • (int) a 라는 부분은
    long 타입인 a를 int 타입으로 변환 시켜주는 부분입니다