HDOJ(HDU) 1570 A C

简介: HDOJ(HDU) 1570 A C

Problem Description

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

image.png


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


题意:很简单,看图片就能理解了。

水题一个!就不多解释了。

import java.util.Scanner;
public class Main{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int t = sc.nextInt();
        while(t-->0){
            String str = sc.next();
            int n = sc.nextInt();
            int m =sc.nextInt();
            if(str.charAt(0)=='A'){
                System.out.println(a(n,m));
            }else{
                System.out.println(c(n,m));
            }
        }
    }
    private static int c(int n, int m) {
        int num =1;
        if(n-m>m){
            m=n-m;
        }
        int cnum=1;
        for(int i=1;i<=n-m;i++){
            cnum=cnum*i;
        }
        for(int i=m+1;i<=n;i++){
            num=num*i;
        }
        return num/cnum;
    }
    private static int a(int n, int m) {
        int num=1;
        for(int i=n-m+1;i<=n;i++){
            num=num*i;
        }
        return num;
    }
}


目录
相关文章
|
存储 Java
【JavaSE】基础笔记 - 图书管理系统(保姆教程,含源码)
【JavaSE】基础笔记 - 图书管理系统(保姆教程,含源码)
480 1
|
Ubuntu
node、npm 命令升级
node、npm 命令升级
383 0
|
SQL 存储 分布式计算
CDP的Hive3系列之Hive Metastore介绍
CDP的Hive Metastore (HMS) 是一种服务,用于在后端 RDBMS(例如 MySQL 或 PostgreSQL)中存储与 Apache Hive 和其他服务相关的元数据。Impala、Spark、Hive 和其他服务共享元存储。与 HMS 的连接包括 HiveServer、Ranger 和代表 HDFS 的 NameNode。
3010 0
CDP的Hive3系列之Hive Metastore介绍
|
存储 安全 生物认证
强密码策略之减少字典攻击风险
【8月更文挑战第14天】
580 2
|
Java
Java发展史
关于Java发展历程的详细介绍,从Java的起源、Java之父James Gosling的背景,到Java各个版本的发布历程和特性更新,以及Java在不同公司之间的变迁,直至2020年3月Java SE 14的发布情况。
398 2
|
机器学习/深度学习 传感器 人工智能
CV面试题目总结(二) - 深度学习算法
CV面试题目总结(二) - 深度学习算法
517 0
|
小程序
【微信小程序】英文字母不换行问题 flex布局字符超出宽度折行问题:设置了word-break: break-all;和flex: 1;冲突flex不生效问题
【微信小程序】英文字母不换行问题 flex布局字符超出宽度折行问题:设置了word-break: break-all;和flex: 1;冲突flex不生效问题
579 1
|
分布式计算 DataWorks API
dataworks常见问题之如何获取oss文件大小
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
554 4
|
机器学习/深度学习 数据采集 人工智能
使用R语言进行机器学习的初学者指南
【4月更文挑战第25天】本文是R语言机器学习初学者指南,介绍了R语言在统计分析和机器学习中的应用。首先,简述R语言的背景及特点,包括其丰富的统计功能和扩展性。接着,指导如何安装和配置R语言及RStudio,以及设置国内R包安装源。然后,讲解R语言的基础知识,如数据类型、变量、数据结构和控制结构。此外,文中还推荐了几个常用的机器学习库,如caret、gbm、RandomForest和xgboost。最后,通过一个线性回归模型实例,展示了使用R语言进行机器学习的基本流程,包括数据准备、预处理、模型训练、评估和预测。
665 2