首页 > 编程知识 正文

c语言动态规划硬币凑数问题,动态规划生产库存问题java

时间:2023-05-03 16:58:04 阅读:110834 作者:1670

问:如果我有几个1元、3元、5元的硬币,我怎么用最低的硬币收集11元?

想法

代码package java_20201010; import java.util.Scanner;/* * @ createdwithintellijidea.* @ class name test6* @ description * @ author by小屋* @ date 2020/10/1020336032 */publiptt 阵列==空||lens==0||n0 ) { return 0; } int[] dp=new int[n 1]; for(intI=0; 合1; I ) { dp[i]=0; (/*for ) intI=1; 合1; I ) { int min=999999; for(intj=0; jlens; j () if ) I-array[j]=0) inttemp=DP[I-array[j] ) 1; if(tempmin ) { min=temp; } } } dp[i]=min; } return dp[n]; */for(intI=1; 合1; I ) for(intj=0; jlens; j () if ) I-array[j]=0) DP[I]=DP[I-array[j] ) 1; } } //dp[i]=min; } return dp[n]; } publicstaticvoidmain (string [ ] args )//todo auto-generatedmethodstubtest6GL=new test6); int [ ] array={ 1,3,5 }; sannersc=newscanner(system.in; int n=sc.nextInt (; intmin _ count=GL.getleastnum (array,n ); system.out.println(min_count; }这里没有使用注释中的代码,是假设数组是有规律的,按照从小到大的顺序排列。 否则,需要比较更新。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。