动态规划入门_钱币兑换问题

匿名 (未验证) 提交于 2019-12-02 23:26:52

];

问题描述:

Problem Description
在一个国家仅有1分,2分,3分硬币,将钱N兑换成硬币有很多种兑法。请你编程序计算出共有多少种兑法。

Input
每行只有一个正整数N,N小于32768。

Output
对应每个输入,输出兑换方法数。

Sample Input
2934 12553

Sample Output
718831 13137761

 1 import java.util.Scanner;  2   3 public class Main {  4       5     public static void main(String[] args) {  6           7         Scanner cin = new Scanner (System.in);  8         while(cin.hasNext()){  9             int n = cin.nextInt(); 10             int [] value = {1,2,3}; 11             int [] dp = new int [32800]; 12              13             dp [0] =1; 14             for(int i = 0;i<value.length;i++){ 15                 for(int j = value[i];j<=n;j++){ 16                     dp[j] = dp[j]+dp[j-value[i]]; 17                 } 18             } 19              20              21             System.out.println(dp[n]); 22         } 23          24     } 25  26 }

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!