#include <stdio.h>
int factorial(int n);
int comb(int m,int k);
int main(void) {
int m,k,result;
result=comb(m,k);
printf("%d個の中から%d個を取り出す組合せ数は、%d通りです",m
,k
,result
); return 0;
}
int factorial(int n){
int i,answer=1;
for(i=n;i>1;i--){
answer*=i;
}
return answer;
}
int comb(int m,int k){
int result;
result=factorial(m)/(factorial(k)*factorial(m-k));
return result;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgZmFjdG9yaWFsKGludCBuKTsKCmludCBjb21iKGludCBtLGludCBrKTsKCmludCBtYWluKHZvaWQpIHsKaW50IG0sayxyZXN1bHQ7CnNjYW5mKCIlZCVkIiwmbSwmayk7CnJlc3VsdD1jb21iKG0sayk7CnByaW50ZigiJWTlgIvjga7kuK3jgYvjgoklZOWAi+OCkuWPluOCiuWHuuOBmee1hOWQiOOBm+aVsOOBr+OAgSVk6YCa44KK44Gn44GZIixtLGsscmVzdWx0KTsKCXJldHVybiAwOwp9CgppbnQgZmFjdG9yaWFsKGludCBuKXsKaW50IGksYW5zd2VyPTE7CmZvcihpPW47aT4xO2ktLSl7CglhbnN3ZXIqPWk7Cn0KCnJldHVybiBhbnN3ZXI7Cgl9CgppbnQgY29tYihpbnQgbSxpbnQgayl7CglpbnQgcmVzdWx0OwpyZXN1bHQ9ZmFjdG9yaWFsKG0pLyhmYWN0b3JpYWwoaykqZmFjdG9yaWFsKG0taykpOwpyZXR1cm4gcmVzdWx0OwoJfQoK