本篇内容主要讲解“怎么用Java实现货币组合”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Java实现货币组合”吧!给你六种 香港云主机面额 1、5、10、20、50、100 元的纸币,假设每种币值的数量都足够多,编写程序求组成N元(N为0~10000的非负整数)的不同组合的个数。 先分析1: 假定100和50两种币的和为num,num = 0,50,100,150,… , 50* (N/50)组合数为 z1 (100x +50y = num 的非负整数解的个数)2: 20有k张, k=0,1,2,3,…. ,(N-num) / 203: 那么1,5,10 这几种币的和为v1andv5andv10 = N- num – 20 * k; 组合数为z2 (10x+5y
y
y
y
y
其实质上就是一个等差数列求和4: 每趟循环的组合数为 z1 * z2 , 然后求和即为最终的结果。不用质疑,这是个正确的答案,也是比较容易理解的答案。 内存消耗也应该是最优的,因为没有使用数组,只是使用了几个变量。运行速度也应该还可以, (money/50) * (money/20)/2 次循环运算,100万内的输入应该都是秒出结果。到此,相信大家对“怎么用Java实现货币组合”有了更深的了解,不妨来实际操作一番吧!这里是开发云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
小编给大家分享一下Win10系统IPv6协议怎么关闭,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.右键开始菜单打开控制面板 – 网络和Internet – 网络连接,找到里面的以…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。