Python 基础知识简单

数组中的所有数字可以相等吗

“数组的所有数字是否相等”问题的详细指南和 Python 实现。

问题陈述

简单

编写一个函数 can_make_equal(arr) 来确定是否可以通过重复添加或减去另一个元素中的任何元素来使数组的所有元素相等。当且仅当数组的总和可以被数组的长度整除时(即平均值是整数),这才是可能的。如果可能,返回 True,否则返回 False。注意:更简单的解释 - 如果我们可以自由地重新分配值,那么当总和可被长度整除时,我们总是可以使它们相等。

约束条件
  • 1 <= len(arr) <= 10^5
  • -10^6 <= arr[i] <= 10^6

示例

Example 1
Input
arr = [1, 1, 1]
Output
True
Explanation

All elements are already equal.

Example 2
Input
arr = [1, 2, 3]
Output
True
Explanation

Sum = 6, length = 3. 6/3 = 2. We can make all elements 2.

Example 3
Input
arr = [1, 2, 4]
Output
False
Explanation

Sum = 7, length = 3. 7/3 is not an integer, so we cannot make all equal.

Need a Hint?
考虑使用特定于数组的数据结构,例如集合或堆。
Edge Cases to Watch
  • 空输入结构
  • 单元素输入
  • 大数值范围

准备好解决了吗?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

在编辑器中打开
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

推荐的 Python 资源

通过相关的交互式教程、备忘单和代码比较来扩展您的知识。