面试真题一个函数,有两个输入变量,分别为n和x,这个函数的计算公式如下,请用递归的方式完成代码的编写

Posted Cry丶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面试真题一个函数,有两个输入变量,分别为n和x,这个函数的计算公式如下,请用递归的方式完成代码的编写相关的知识,希望对你有一定的参考价值。

我们选用的 OpenJDK 14 最新环境,你的 java 代码会传送至 ShowMeBug 提供的该环境中。

你必须定义一个 ShowMeBug 类和 public static void main(String[] args) 方法,这样我们才能运行出结果。

一个简单的例子:

public class ShowMeBug 
  public static void main(String[] args) 
    System.out.println("Hello World!");
  

你可以使用下面的库:

import java.io.*;
import java.util.*;
import java.math.*;
import java.util.regex.*;
import java.util.stream.*;
import java.text.*;
import java.security.SecureRandom;
import java.util.function.*;
import java.util.concurrent.*;
import com.fasterxml.jackson.core.*;
import com.fasterxml.jackson.core.type.*;
import com.fasterxml.jackson.databind.*;

参考代码:

class Solution 
  // 转移方程: f(n) = n * x^(n) + (n - 1) * x^(n-1) + …… + 1 * x^(1); 
  public static int solution(int n, int x ,int sum) 
    if (n < 0)
      return sum;
    
    sum = (int) (sum + n * Math.pow(x,n));
    return solution(n -1,x,sum);
  


public class ShowMeBug 
  public static void main(String[] args) 
    int n = 2;
    int x = 2;
    int sum = 0;
    sum = Solution.solution(n,x,sum);
    System.out.println(sum);
    System.out.println("Hello World!");
    
  


以上是关于面试真题一个函数,有两个输入变量,分别为n和x,这个函数的计算公式如下,请用递归的方式完成代码的编写的主要内容,如果未能解决你的问题,请参考以下文章

最小函数值

COGS 2334. [HZOI 2016]最小函数值

最小函数值(堆)

P2085 最小函数值 堆

P2085最小函数值(优先队列)

?Luogu P2085 最小函数值