Escreva um programa que aceite uma entrada como:
n,k
que então calcula:
e depois imprime o resultado.
Um exemplo numérico:
Entrada:
5,2
Cálculo interno:
Saída impressa:
10
Gostaria de ver uma resposta que supera minha solução python de 65 caracteres, mas todos os idiomas são obviamente bem-vindos.
Aqui está a minha solução:
n,k=input();f=lambda x:+(x<2)or x*f(x-1);print f(n)/(f(k)*f(n-k))
Editar:
Admito que esta pergunta é do quebra-cabeça de combinação matemática do site codegolf . Sei que minha resposta pode parecer que não há muito progresso nisso, mas os líderes desse quebra-cabeça o resolveram em quase a metade dos caracteres.
As contagens mais baixas atuais de caracteres por idioma são:
Perl: 35
Ruby: 36
Python: 39
PHP: 62