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...

相关推荐
做运维的阿瑞4 小时前
Python零基础入门:30分钟掌握核心语法与实战应用
开发语言·后端·python·算法·系统架构
猿究院-陆昱泽5 小时前
Redis 五大核心数据结构知识点梳理
redis·后端·中间件
yuriy.wang5 小时前
Spring IOC源码篇五 核心方法obtainFreshBeanFactory.doLoadBeanDefinitions
java·后端·spring
咖啡教室7 小时前
程序员应该掌握的网络命令telnet、ping和curl
运维·后端
你的人类朋友8 小时前
Let‘s Encrypt 免费获取 SSL、TLS 证书的原理
后端
老葱头蒸鸡8 小时前
(14)ASP.NET Core2.2 中的日志记录
后端·asp.net
李昊哲小课8 小时前
Spring Boot 基础教程
java·大数据·spring boot·后端
码事漫谈9 小时前
C++内存越界的幽灵:为什么代码运行正常,free时却崩溃了?
后端
Swift社区9 小时前
Spring Boot 3.x + Security + OpenFeign:如何避免内部服务调用被重复拦截?
java·spring boot·后端
90后的晨仔9 小时前
Mac 上配置多个 Gitee 账号的完整教程
前端·后端