알고리즘 공부/수학

백준 2407번 조합 with Kotlin

_우지 2021. 9. 5. 13:19

조합 성공

시간 제한메모리 제한제출정답맞은 사람정답 비율

2 초 128 MB 16893 5225 4491 37.036%

문제

nCm을 출력한다.

입력

n과 m이 주어진다. (5 ≤ n ≤ 100, 5 ≤ m ≤ 100, m ≤ n)

출력

nCm을 출력한다.

예제 입력 1 복사

100 6

예제 출력 1 복사

1192052400

알고리즘 분류

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import java.io.BufferedReader
import java.io.BufferedWriter
import java.io.InputStreamReader
import java.io.OutputStreamWriter
import java.math.BigInteger
 
 
val br = BufferedReader(InputStreamReader(System.`in`))
val bw = BufferedWriter(OutputStreamWriter(System.out))
 
fun main()=with(br){
    val (n,m) = readLine()!!.split(" ").map{it.toInt()}
    var up : BigInteger = 1.toBigInteger()
    var down : BigInteger = 1.toBigInteger()
    for(i in n downTo n-(m-1)){
        up*=i.toBigInteger()
    }
 
    for(i in m downTo 1){
        down*=i.toBigInteger()
    }
    bw.write("${up/down}")
    bw.flush()
    bw.close()
}
 
cs