java 为什么递归过不了呢?
查看原帖
java 为什么递归过不了呢?
977652
starstarzhang楼主2023/12/5 14:58

k在小于或等于10时都没问题,当k大于10之后就会栈溢出,难道是内存限制问题吗?

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        k = sc.nextInt();
        dfs();
    }

    static int i = 1;
    static double sum = 0;
    static int k = 0;
    public static void dfs(){
        sum += (1.0 / i);
        i++;
        if(sum > k) {
            System.out.println(i-1); // 前面多++了一次
            return;
        }
        else dfs();
    }
}
2023/12/5 14:58
加载中...