N!
Time Limit: 1000MS Memory Limit: 65536KB
Problem Description
给出两个数 n, m。求 和 。
计算公式:
Input
输入数据有多组(数据组数不超过 250),到 EOF 结束。
对于每组数据,输入两个用空格隔开的整数 n, m (0 <= m <= n <= 20) 。
Output
对于每组数据输出一行,先输出 "Case #t: " 表示当前是第几组,t 从 1 开始计数,之后输出 和 。
Example Input
1 1 20 1 20 10
Example Output
1 1 20 20 670442572800 184756
Hint
Code
#include <stdio.h> long long get(int a) { long long sum = 1; for(int i=1;i<=a;i++){ sum *= i; } return sum; } int main() { int n, m; while(scanf("%d %d",&n,&m) != EOF) { long long b = get(n)/get(n-m); printf("%lld %lld\n",b,b/get(m)); } }