渝北最后的单纯 2022-04-03 22:51 采纳率: 0%
浏览 62
已结题

求1000以内n的阶乘

img

当n=130 这组数据过不了,不知道为什么。找了好久没找着。
以下是代码

java

    import java.util.*;

    public class Main{
        static int len = 1;
        public static void main(String[] args ){
            Scanner in = new Scanner(System.in);
            int n = in.nextInt()    ;
            int ans[] = new int[100000];
            ans[1] = 1;
            for(int i = 1; i <= n ; i++) {
                mul(ans, i);
            }
            for(int i = len ; i >= 1 ; i--) {
                System.out.print(ans[i]);
            }
            System.out.println();
            
        }
        //  低位进位 jinwei 
        public static void up(int[] a , int i) {
            if(a[i] > 10 ) {
                a[i+1] +=  a[i]/ 10;
                a[i] %= 10;
            }
        }
        // 乘
        public static void mul(int a[], int k) {
            for(int i = 1; i <= len ;i++) {
                a[i] *= k;
            }
            for(int i = 1; i<= len-1  ;i++) {
                up(a, i);
            }
            while(a[len]>=10) {
                a[len+1] +=  a[len]/ 10;
                a[len++] %= 10;
            }
        }
        
    }

  • 写回答

1条回答 默认 最新

  • 超越ct 2022-04-03 23:05
    关注

    阶乘的话,int类型会不会超过最大值?要考虑一下范围问题

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月4日
  • 创建了问题 4月3日

悬赏问题

  • ¥15 curl 命令调用正常,程序调用报 java.net.ConnectException: connection refused
  • ¥20 关于web前端如何播放二次加密m3u8视频的问题
  • ¥20 spring boot集成mqtt的使用问题
  • ¥15 使用百度地图api 位置函数报错?
  • ¥15 metamask如何添加TRON自定义网络
  • ¥66 关于川崎机器人调速问题
  • ¥15 winFrom界面无法打开
  • ¥30 crossover21 ARM64版本安装软件问题
  • ¥15 mymetaobjecthandler没有进入
  • ¥15 mmo能不能做客户端怪物