美团2017 JAVA
[编程题]大富翁游戏
[编程题]拼凑钱币
[编程题]最大矩形面积
[编程题]最长公共连续子串
动态规划求解。
import java.util.Scanner;
import java.util.Arrays;
public class Main {
int M[]={5,10,20,50,100};
public static void main(String[] args){
Main s=new Main();
int n = (new Scanner(System.in)).nextInt();
long dp[] = new long[n+1];
Arrays.fill(dp, 1);
for(int m:s.M){
for(int j=m;j<=n;j++){
dp[j]+=dp[j-m];
}
}
System.out.println(dp[n]);
}
}