HDOJ-ACM1017(JAVA)

HDOJ 1017 题目一般是经典的"计算阶乘"的问题或类似题目。

不过为了准确帮你,我先假设题目是:
计算 n 的阶乘(n!)并输出结果,n 可以较大,需要用 Java 的大数处理。


HDOJ 1017(JAVA)示例代码:大数阶乘计算

java 复制代码
import java.math.BigInteger;
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        while (sc.hasNextInt()) {
            int n = sc.nextInt();
            if (n < 0) break;  // 如果题目有结束条件
            System.out.println(factorial(n));
        }
        
        sc.close();
    }
    
    // 计算阶乘函数,返回字符串
    public static BigInteger factorial(int n) {
        BigInteger res = BigInteger.ONE;
        for (int i = 2; i <= n; i++) {
            res = res.multiply(BigInteger.valueOf(i));
        }
        return res;
    }
}
php
623 Bytes
© 菜鸟-创作你的创作

代码说明:

  • 使用 BigInteger 处理大数阶乘。
  • 循环读入测试数据,输出对应阶乘。
  • 结束条件根据题目设置,比如负数或 EOF。

HDOJ 1017题目原文是"阶乘问题":

给定一个整数 n(0 ≤ n ≤ 100),求 n! 的值。


【题目描述简要】

计算 n 的阶乘,n 最大到 100,结果非常大,需用大数计算。


【JAVA 完整代码实现】

java 复制代码
import java.math.BigInteger;
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNextInt()) {
            int n = sc.nextInt();
            if (n < 0) break;  // 如果题目要求停止输入的条件
            System.out.println(factorial(n));
        }
        sc.close();
    }
    // 计算阶乘
    public static BigInteger factorial(int n) {
        BigInteger result = BigInteger.ONE;
        for (int i = 2; i <= n; i++) {
            result = result.multiply(BigInteger.valueOf(i));
        }
        return result;
    }
}
php
609 Bytes
© 菜鸟-创作你的创作

【运行示例】

输入:

复制代码
5
10
0
php
6 Bytes
© 菜鸟-创作你的创作

输出:

复制代码
120
3628800
1
php
13 Bytes
© 菜鸟-创作你的创作

www.52runoob.com/archives/54...

相关推荐
Dragon Wu1 小时前
Spring Security Oauth2.1 授权码模式实现前后端分离的方案
java·spring boot·后端·spring cloud·springboot·springcloud
一个有梦有戏的人1 小时前
Python3基础:进阶基础,筑牢编程底层能力
后端·python
爬山算法1 小时前
Hibernate(88)如何在负载测试中使用Hibernate?
java·后端·hibernate
独断万古他化2 小时前
【Spring 原理】Bean 的作用域与生命周期
java·后端·spring
我爱加班、、2 小时前
Websocket能携带token过去后端吗
前端·后端·websocket
一 乐2 小时前
校园二手交易|基于springboot + vue校园二手交易系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端
80530单词突击赢2 小时前
SpringBoot整合SpringMVC全解析
java·spring boot·后端
hdsoft_huge3 小时前
1panel面板中部署SpringBoot和Vue前后端分离系统 【图文教程】
vue.js·spring boot·后端
lekami_兰3 小时前
RabbitMQ 延迟队列实现指南:两种方案手把手教你搞定
后端·rabbitmq·延迟队列
程序员泠零澪回家种桔子3 小时前
Sentinel核心能力解析:限流与集群方案
后端·架构·sentinel