-
[백준 - 11051번] 이항계수2 - Java //Wello Horld//Algorithm/BOJ(Baekjoon Online Judge) 2019. 7. 23. 15:39
이번에는 BOJ의 11051번 문제 "이항계수2"를 풀어보도록 하자
입력으로 N과 K가 주어지고 주어진 입력을 통해, 이항계수 (N K) 를 10,007로 나눈 나머지를 구하는 프로그램을 작성하는 문제이다. 문제는 간단하니, 부가설명없이 성공한 코드는 아래와 같다.
import java.io.*; import java.math.BigInteger; import java.util.*; public class sample { public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); StringTokenizer st = new StringTokenizer(br.readLine()); int N = Integer.parseInt(st.nextToken()); int K = Integer.parseInt(st.nextToken()); bw.write(combination(N, K).remainder(new BigInteger("10007")) + "\n"); bw.flush(); br.close(); bw.close(); } public static BigInteger combination(int N, int K){ BigInteger combiUp = new BigInteger("1"); BigInteger combiDown = new BigInteger("1"); for(int i = 1; i <= K; i++){ combiUp = combiUp.multiply(new BigInteger(String.valueOf(N-(i-1)))); combiDown = combiDown.multiply(new BigInteger(String.valueOf(i))); } return combiUp.divide(combiDown); } }
문제 : https://www.acmicpc.net/problem/11051
'Algorithm > BOJ(Baekjoon Online Judge)' 카테고리의 다른 글
[백준 - 1016번] 제곱 ㄴㄴ수 - Java //Wello Horld// (0) 2019.07.23 [백준 - 1717번] 집합의 표현 - Java //Wello Horld// (0) 2019.07.23 [백준 - 1256번] 사전 - Java //Wello Horld// (0) 2019.07.23 [백준 - 5355번] 화성수학 - Java //Wello Horld// (0) 2019.07.21 [백준 - 1107번] 리모컨 - Java //Wello Horld// (0) 2019.07.19