【找出缺失的观测数据】python

思路:

主要在于分配剩余的部分分配问题

代码:

python 复制代码
class Solution:
    def missingRolls(self, rolls: List[int], mean: int, n: int) -> List[int]:
        m = len(rolls)
        total_sum = (n + m) * mean
        toset = total_sum - sum(rolls)
        # 检查 toset 是否在可能的范围内
        if toset < n or toset > 6 * n:
            return []
        # 计算平均值
        new_mean = toset // n
        remainder = toset % n
        # 可以被 n 整除
        if remainder == 0:
            return [new_mean] * n
        # 不能被整除,分配剩余的部分
        ans = [new_mean + 1] * remainder + [new_mean] * (n - remainder)
        return ans
相关推荐
CodeCraft Studio21 小时前
国产化PDF处理控件Spire.PDF教程:如何在 Java 中通过模板生成 PDF
java·python·pdf·spire.pdf·java创建pdf·从html创建pdf
scx2013100421 小时前
P13929 [蓝桥杯 2022 省 Java B] 山 题解
c++·算法·蓝桥杯·洛谷
阿方.91821 小时前
《数据结构全解析:栈(数组实现)》
java·开发语言·数据结构
YC运维21 小时前
Ansible题目全解析与答案
java·算法·ansible
摆烂z21 小时前
Jupyter Notebook的交互式开发环境方便py开发
ide·python·jupyter
小欣加油1 天前
leetcode 912 排序数组(归并排序)
数据结构·c++·算法·leetcode·排序算法
山河君1 天前
webrtc之高通滤波——HighPassFilter源码及原理分析
算法·音视频·webrtc·信号处理
星辰大海的精灵1 天前
SpringBoot与Quartz整合,实现订单自动取消功能
java·后端·算法
data myth1 天前
力扣1210. 穿过迷宫的最少移动次数 详解
算法·leetcode·职场和发展
一乐小哥1 天前
一口气同步10年豆瓣记录———豆瓣书影音同步 Notion分享 🚀
后端·python