a623. 3. Combination
Tags :
Accepted rate : 2181人/2305人 ( 95% ) [非即時]
評分方式:
Tolerant

最近更新 : 2013-02-19 17:02

Content

從 n 個物品取 m 個的組合是一個在數學及企業中常用的值。本題的程式要讀入 n 和 m 的值,輸出從 n 個物品中取出 m 個的不同組合有幾種。它的計算方式為 n 階乘除以 m 階乘再除以 (n - m) 的階乘。n 階乘則是 n 乘以 n - 1,再乘以 n - 2,以此類推,直到最後乘以 1。n 階乘也可以寫成 n!。因此,5 階乘 (5!) 的計算方式為:5 × (5-1) × (5-2) × (5-3) × (5-4) = 5 × 4 × 3 × 2 × 1 = 120。同理 3! 的計算為 3 × (3-1) × (3-2) = 3 × 2 × 1 = 6。而 (5 - 3)!,也就是 2! 的計算為 2 × (2-1) = 2 × 1 = 2。因此,從 5 個物品中取 3 個的不同組合數便為:

   n! / [m! x (n – m)!]
= 5! / [3! x (5 – 3)!]
= 120 / [6 x2]
= 120 / 12
= 10

你的程式必須能處理任何 n 和 m 的值。你必須以整數輸出結果。你不需擔心整數溢位。所有的輸入從 stdin 讀取。輸入的 n 和 m 以空格分開、以換行結束。 

Input
Output
Sample Input #1
10 5
Sample Output #1
252
測資資訊:
記憶體限制: 512 MB
公開 測資點#0 (100%): 1.0s , <1K
Hint :
Tags:
出處:
HP CodeWars2007 [管理者: snail (蝸牛) ]

Status Forum 排行

ID User Problem Subject Hit Post Date
41221 lbm00138 (類子 & 小號...) a623
這題是 EOF
20 2024-07-11 23:58
32024 tana760828 (tana) a623
其他思路
607 2022-09-07 23:52
27111 406490150@gm ... (我是朱朱) a623
688 2021-09-13 14:48
23700 s10806226@sm ... (Eri) a623
想法
924 2020-12-10 20:31
23625 555555555555 ... (5x55) a623
想法
696 2020-12-03 20:27