HDU 1570 AC

简介: HDU 1570 AC

A C

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 6697    Accepted Submission(s): 4381


 

Problem Description

Are you excited when you see the title "AC" ? If the answer is YES , AC it ;

You must learn these two combination formulas in the school . If you have forgotten it , see the picture.




Now I will give you n and m , and your task is to calculate the answer .

 

 

Input

In the first line , there is a integer T indicates the number of test cases.
Then T cases follows in the T lines.
Each case contains a character 'A' or 'C', two integers represent n and m. (1<=n,m<=10)

 

 

Output

For each case , if the character is 'A' , calculate A(m,n),and if the character is 'C' , calculate C(m,n).
And print the answer in a single line.

 

 

Sample Input

 

2

A 10 10

C 4 2

 

 

Sample Output

 

3628800

6

 

 

Author

linle

 

 

Source

HDU 2007-1 Programming Contest

本题不难,学过排列组合的同学基本都可以模拟出来,直接求阶乘再得出结果就好了。

代码如下:

#include<stdio.h>
int A(int n,int m)
{
    int sum=1,i;
    for(i=n;i>=n-m+1;i--)
        sum*=i;
    return sum;
}
int C(int n,int m)
{
    int sum=1,i;
    for(i=m;i>0;i--)
        sum*=i;
    return A(n,m)/sum;
}
int main()
{
    int T;
    scanf("%d",&T);
    while(T--)
    {
        int n,m;
        char k;
        scanf("\n%c %d %d",&k,&n,&m);
        //printf("k=%c n=%d m=%d\n",k,n,m);
        if(k=='A')
            printf("%d\n",A(n,m));
        else 
            printf("%d\n",C(n,m));
    }
    return 0;
}
目录
相关文章
AC Leetcode 59. 螺旋矩阵 II
AC Leetcode 59. 螺旋矩阵 II
64 0
AC Leetcode 59. 螺旋矩阵 II
AC牛客 BM97 旋转数组
AC牛客 BM97 旋转数组
64 0
|
算法
AC Leetcode.三数之和
AC Leetcode.三数之和
68 0
|
人工智能
POJ3104---烘干机
POJ3104---烘干机
|
算法
HDU-1050,Moving Tables(不用贪心也AC)
HDU-1050,Moving Tables(不用贪心也AC)
HDU-1219,AC Me(字符串处理)
HDU-1219,AC Me(字符串处理)