a623. 3. Combination
標籤 :
通過比率 : 2114人/2233人 ( 95% ) [非即時]
評分方式:
Tolerant

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

內容

從 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 以空格分開、以換行結束。 

輸入說明
輸出說明
範例輸入 #1
10 5
範例輸出 #1
252
測資資訊:
記憶體限制: 512 MB
公開 測資點#0 (100%): 1.0s , <1K
提示 :
標籤:
出處:
HP CodeWars2007 [管理者: snail (蝸牛) ]

本題狀況 本題討論 排行

編號 身分 題目 主題 人氣 發表日期
32024 tana760828 (tana) a623
其他思路
556 2022-09-07 23:52
27111 406490150@gm ... (我是朱朱) a623
628 2021-09-13 14:48
23700 s10806226@sm ... (Eri) a623
想法
859 2020-12-10 20:31
23625 555555555555 ... (5x55) a623
想法
634 2020-12-03 20:27
15947 hshua (hshua) a623
DP想法
1365 2018-11-07 11:44