首页 > 其他分享 >将一个数值切成N份 返加一个数组

将一个数值切成N份 返加一个数组

时间:2023-08-07 19:12:26浏览次数:30  
标签:切成 avgNumber number 数值 param 数组 array 返加

/**
 * 将一个数值切成N份
 * @param  int $number 切的数值
 * @param  int $avgNumber 份数
 * @return array
 */
function numberAvg($number, $avgNumber)
{
    if ($number == 0) {
        $array = array_fill(0, $avgNumber, 0);
    } else {
        $avg = floor($number / $avgNumber);
        $ceilSum = $avg * $avgNumber;
        $array = array();
        for ($i = 0; $i < $avgNumber; $i++) {
            if ($i < $number - $ceilSum) {
                array_push($array, $avg + 1);
            } else {
                array_push($array, $avg);
            }
        }
    }
    return $array;
}

标签:切成,avgNumber,number,数值,param,数组,array,返加
From: https://www.cnblogs.com/fuqian/p/17612481.html

相关文章

  • 检测数组深度,数据深度,几维数组
    /** * 检测数据的深度 * @param $array 要检测的数组 * @return int   返回深度值 */function array_depth($array){    $max_depth = 1;    foreach ($array as $value) {        if (is_array($value)) {          ......
  • 【狂神说Java】Java零基础学习笔记-Java数组
    【狂神说Java】Java零基础学习笔记-Java数组Java数组01:数组的定义数组是相同类型数据的有序集合.数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们.Java数组02:数组声明创建......
  • 【转】JAVA中list和原生数组的互相转换
    经常用经常忘转自 javaList和数组相互转换的方法总结_javalist转为数组_great-sun的博客-CSDN博客Java中,可以通过以下方法将List转换为数组:List<String>list=newArrayList<>();String[]array=list.toArray(newString[0]);在这个例子中,我们将一个String类型的List......
  • 数组
    数组数组与内存什么是数组数组是一个容器,存储多个相同类型的数据集合,对这些数据统一管理案例数组互相赋值二维数组二维数组本质上,也是按照一维数组存储锯齿数组什么是锯齿数组锯齿数组是一个数组,内部每个元素是数组,而且每个元素数组长度都可以不......
  • 王道408--数据结构--用数组实现二叉树--并查集及其优化代码
    一、数组实现二叉树(下标从0开始)#include<stdio.h>typedefstruct_TreeNode{intdata;boolIsEmpty;//结点是否为空//因为我们的二叉树不一定是满二叉树,中间可能有一些节点不存在//值为1代表空}TreeNode;//初始化voidInitTreeNode(TreeNodet[......
  • 【补充】数组的过滤
    【补充】数组的过滤数组.filter(匿名函数,接收一个参数,函数必须返回true/false)返回true则表示该数据保留vararr=['a','at','atom','attoo','be','beyond','cs','csrf']//数组.filer(匿名函数,接受一个参数,函数必须......
  • C关于一维数组以及二维数组的创建和简单利用(下)
    #include<stdio.h>intmain(){inta[3][4]={{1,2,3,4},{1,2,3,4},{1,2,3,4}};intb=0;for(b=0;b<3;b+=1){intc=0;for(c=0;c<4;c+=1){printf("%p||",&a[b][c]);......
  • Java数组
       ......
  • C语言定义并初始化一个二维数组(利用二级指针)
    C语言定义并初始化一个二维数组(利用二级指针)1.代码如下#include<stdio.h>#include<stdlib.h>intmain(){//m,n表示数组的行数和列数intm,n;scanf("%d%d",&m,&n);//p是一个二级指针,使用malloc函数初始化。注意p指向的是一个指针,所以sizeof操作......
  • 后缀数组
    SA基数排序一般采用LSD(LeastSignificantDigital),从键值的最低位开始排序。定义记\(suf(i)\)为起始下标为\(i\)的后缀。记\(sa[i]\)为排名第\(i\)的后缀的起始位置。记\(rk[i]\)为\(suf(i)\)的排名。P3809【模板】后缀排序对于一个长为\(n\)的字符串,求......