PHP付钱找钱算法/**

* @param $arr_money

* @param $money

* @author http://centphp.com

* @return array

*/

function payMoney($arr_money, $money): array

{

$k = count($arr_money);

$arr = [];

for ($i = 0; $i

$temp = (int)($money / $arr_money[$i]);

$money = $money % $arr_money[$i];

if ($temp > 0) {

$arr[$arr_money[$i]] = $temp;

}

}

return $arr;

}

使用:// 参与分配的金额

$arr_money = array(100, 50, 20, 10, 5, 2, 1);

$money = 319;

$num = payMoney($arr_money, $money);

print_r($num);

Array

(

[100] => 3

[10] => 1

[5] => 1

[2] => 2

)

php订单金额分摊算法,PHP付钱找钱算法相关推荐

  1. 56.订单明细实付金额分摊(实时)

    第1章 需求分析及实现思路 1.1 需求分析 主订单的应付金额[origin_total_amount]一般是由所有订单明细的商品单价*数量 汇总[sku_price*sku_num]组成. 但是由于 ...

  2. WorkFlow设计篇Step.2—传参的用法-订单金额的处理(续)-WF4.0

    开篇 上一篇,我们开始讲述WF4.0中的设计篇的开始,本系列主要讲述如何结合业务来设计工作流处理流程,并说明如何使用工作流流程来设计完成具体的业务流程处 理过程,将原来的代码处理业务流程,修改成WF可 ...

  3. 订单金额等字段设置decimal时,要禁止为负数

    如果为负数的时候,别人会抓包或者反编译接口地址,生成负的订单金额,然后余额支付,获取多余的余额: 1 2 ALTER TABLE test_order MODIFY cost DECIMAL(19,4 ...

  4. 实时计算-多级订单金额,及下级人数

    1 系统概述 人物关系为代理模式,一级代理包含二级代理,二级代理包含三级代理. 需求为实时计算每个用户的订单金额,并取出金额的TOP100. 并实时计算当天下级人数. 1.1 指标使用方式 单用户订单 ...

  5. 如何修改订单金额实现 0.01 元买 iPhone X?

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 作者简介: 肖志华,rNma0y,信安自学,白帽子.(在安全圈子里,一直以来有"黑 ...

  6. 游戏充值订单金额修改思路与实践

    一.目的 修改游戏中元宝充值订单金额,如下图将3000元订单改为一元 二.思路与实践 首先我们先了解一下微信和支付宝在app中的调用流程(图片来源网络,侵删): 上图中可以看到, 商户app请求订单 ...

  7. 付款申请单控制申请金额,1、每行记录不可高于采购订单金额减去已申请金额,2、申请时判断之前的已付款项,供应商采购发票有没有到齐。

    付款申请单控制申请金额,1.每行记录不可高于采购订单金额减去已申请金额,2.申请时判断之前的已付款项,供应商采购发票有没有到齐,第一次付款时无付款申请记录可直接通过,当有付款记录后,若已付款项的发票还 ...

  8. 【SQL】— 面试SQL,订单金额统计

    面试题中的一道sql题,比较考察对sql函数的掌握程度,记录一下,方便学习. 需求: 一张客户表 tb_cust 如下: CUST_ID varchar(30) 客户编号(primary key) C ...

  9. 【数据结构与算法】【算法思想】分治算法

    贪心算法 回溯算法 分治算法 动态规划 MapReduce本质就是分治算法,是Google大数据处理的三驾马车之一,另外两个是GFS和Bigtable.它在倒排索引,PageRank计算,网页分析等搜 ...

最新文章

  1. 浮动元素的display属性
  2. 2019第十届蓝桥杯C/C++ A组省赛 —— 第二题: 数列求值
  3. 福建省高职单招分数怎么计算机,2019福建高职单招切线 高职招考分数线是多少...
  4. 8321r 当前不允许登陆_Apache Shiro安全框架实现身份认证(登陆与登出)
  5. 反向传播算法(过程及公式推导)_一文讲透神经网络的反向传播,要点介绍与公式推导...
  6. 在程序员面前千万不要说这9句话,我一个同事就死的很惨!
  7. 搅局者奇虎360:特供机背后的周式隐忧
  8. 在C ++中检查一个数组是否是另一个数组的子数组
  9. 开源代码准确率99%+,人脸识别问题真的被解决了吗?
  10. 数字图像处理(MATLAB)(第三版) 冈萨雷斯 中的matlab附录代码工具箱
  11. 装备制造业的变革时代,SCM供应链管理系统如何赋能装备制造企业转型升级
  12. 登录失败:用户帐户限制。可能的原因包括不允许空密码,登录时间限制,或强制的策略限制。...
  13. 不同cpu matlab,求助大神,为何不同机器运行MATLAB结果不同
  14. steam 32位 linux 下载地址,「Linux」- 安装 Steam 客户端
  15. js 字符串截取数组常用方法总结(前端)
  16. H.266/VVC:色度帧内预测模式之CCLM技术
  17. c#: NetTopologySuite凹凸多边形计算
  18. 前端进阶_狂神Vue笔记_语法指令v-bind、v-on、v-for_表单双绑_组件_Axios异步通信_Vue的生命周期_计算属性_插槽 <slot>_webpack使用_vue-router路由
  19. 微信H5配置测试的appId和secret
  20. ESXI 6.7全面系统教程~esxi安装过程

热门文章

  1. Linux中删除文件夹和文件的命令
  2. c/c++教程 - 1.3 关键字、标识符命名规则
  3. 马虎的算式子 (枚举法)
  4. Struts2一个诡异问题的解决
  5. THUWC2017 随机二分图
  6. JavaScript中数组去重汇总
  7. web前端页面优化——个人见解
  8. Apache配置SSL证书指引
  9. Phthon学习---错误处理、调试和测试
  10. 程序员资源系列(不断完善中)