SDUT 3931 N!

来源:互联网 发布:爱微游一样的软件 编辑:程序博客网 时间:2024/06/06 21:16

SDUT 3931 N!

Time Limit: 1000MS Memory Limit: 65536KB

Problem Description


给出两个数 n, m。求 3748-1 和 3748-2。
计算公式:
这里写图片描述

Input


输入数据有多组(数据组数不超过 250),到 EOF 结束。
对于每组数据,输入两个用空格隔开的整数 n, m (0 <= m <= n <= 20) 。

Output


对于每组数据输出一行,先输出 “Case #t: ” 表示当前是第几组,t 从 1 开始计数,之后输出 3748-1 和 3748-2。

Example Input


1 1
20 1
20 10

Example Output


1 1
20 20
670442572800 184756

Hint


Author


「“师创杯”山东理工大学第九届ACM程序设计竞赛 正式赛」MLE_kenan

Submit


#include <bits/stdc++.h>using namespace std;long long n[25];void mems(){    n[0] = 1;    for(int i = 1; i <= 20; i++)        n[i] = n[i-1] * i;}int main(){    mems();    int N, M;    while(~scanf("%d%d", &N, &M))        printf("%lld %lld\n", n[N]/n[N-M], n[N]/(n[N-M]*n[M]));    return 0;}
原创粉丝点击