1073: 人民币问题

题目

Description

给出任意的人民币(>10元)的整币兑换成5元、2元和1元币值(要求三种币值均有)的方法有多少种。

Input

输入任意的人民币(>10元)的整币100,50,20,10

Output

计算出兑换成5元、2元和1元币值(要求三种币值均有)的方法有多少种

Sample Input

50
Sample Output

106


//根据题目的意思可以知道,根据循环写出来方法即可

代码块

import java.math.BigInteger;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner cn = new Scanner(System.in);
        while (cn.hasNext()) {
            int n = cn.nextInt();
            System.out.println(Factorial(n - 1));
        }
        cn.close();
    }

    private static BigInteger Factorial(int n) {
        return n <= 1 ? new BigInteger(Integer.toString(1)) : Factorial(n - 1)
                .multiply(new BigInteger(Integer.toString(n)));
    }

}

你可能感兴趣的:(acm编程)