백준 11050 - 이항 계수 1 [Rust]

[Bronze I] 이항 계수 1 - 11050

Posted by Hebi on March 30, 2023

백준 알고리즘

[Bronze I] 이항 계수 1 - 11050

문제 링크

성능 요약

메모리: 13152 KB, 시간: 0 ms

분류

수학, 구현, 조합론

문제 설명

자연수 N과 정수 K가 주어졌을 때 이항 계수 (NK)를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 NK가 주어진다. (1 ≤ N ≤ 10, 0 ≤ KN)

출력

(NK)를 출력한다.

Code

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
use std::io;

fn main() {
  let  mut input = String::new();
  io::stdin().read_line(&mut input).unwrap();


  let mut  v1: Vec<i32> = input
        .split_whitespace()
        .map(|x| -> i32 { x.parse().unwrap() })
        .collect();

 let mut n =v1[0];
 let mut k= v1[1];

    println!("{}",factorial(n)/(factorial(k)*factorial(n-k)));
}

fn factorial(n:i32)->i32{
    if n==1||n==0{
         return 1;
    }else{
        factorial(n-1)*n
    }
}