题目 2114: 信息学奥赛一本通T1173-阶乘和

题目描述:

用高精度计算出S=1!+2!+3!+...+n!(n≤50),其中"!"表示阶乘,例如:5!=5×4×3×2×1。

输入正整数n,输出计算结果S。

代码:

java 复制代码
package lanqiao;

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

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        BigInteger sum = new BigInteger("0");

        for(int i = 1;i <= n;i ++)
        {
            sum = sum.add(f(i));
        }
        System.out.println(sum);
    }

    public static BigInteger f(int n)
    {
        BigInteger sum = new BigInteger("1");

        for(int i = 1;i <= n;i ++)
        {
            sum = sum.multiply(new BigInteger(String.valueOf(i)));
        }
        return sum;
    }
}
相关推荐
李斯维几秒前
循序渐进 Android Binder(二):传递自定义对象和 AIDL 回调
android·java·android studio
androidwork2 分钟前
OkHttp 3.0源码解析:从设计理念到核心实现
android·java·okhttp·kotlin
程序员岳焱4 分钟前
Java 程序员成长记(二):菜鸟入职之 MyBatis XML「陷阱」
java·后端·程序员
我命由我123455 分钟前
Spring Boot 项目集成 Redis 问题:RedisTemplate 多余空格问题
java·开发语言·spring boot·redis·后端·java-ee·intellij-idea
面朝大海,春不暖,花不开5 分钟前
Spring Boot消息系统开发指南
java·spring boot·后端
程序员岳焱7 分钟前
Java 程序员成长记(三):菜鸟入职之@Transactional「罢工」
java·后端·编程语言
fail_to_code10 分钟前
递归法的递归函数何时需要返回值
算法
Rocky40115 分钟前
JAVAEE->多线程:锁策略
java·开发语言·jvm
白宇横流学长15 分钟前
基于J2EE架构的在线考试系统设计与实现【源码+文档】
java·架构·java-ee
猫咪老师199520 分钟前
多系统一键打包docker compose下所有镜像并且使用
java·docker·容器