Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonの最小範囲I


整数の配列Aがあるとします。ここで、整数A [i]ごとに、範囲[-KからK]の任意のxを選択し、xをA[i]に追加できます。このプロセスの後、配列Bができました。Bの最大値とBの最小値の差を可能な限り小さくする必要があります。

したがって、入力がA =[0,10]、K =2の場合、B =[2,8]

として、出力は6になります。

これを解決するには、次の手順に従います-

  • MAX:=(Aの最大値)-K
  • MIN:=(Aの最小値)+ K
  • 違い:=MAX-MIN
  • 差<0がゼロ以外の場合、
    • 0を返す
  • それ以外の場合は差額を返します

理解を深めるために、次の実装を見てみましょう-

class Solution:
   def smallestRangeI(self, A, K):
      MAX = max(A)-K
      MIN = min(A)+K
      difference = MAX-MIN
      if difference <0:
         return 0
      else:
         return difference
ob = Solution()
print(ob.smallestRangeI([0,10],2))

入力

[0,10],2

出力

6

  1. PythonでMatrixを初期化する

    この記事では、Python3.xで2次元リストを使用して行列を初期化する方法について学習します。またはそれ以前。 Python言語のみが提供するマトリックスを初期化する直感的な方法を見てみましょう。ここでは、リスト内包表記を利用します。内部リストを初期化し、リスト内包表記を使用して複数の行に拡張します。 例 # input the number of rows N = 3 # input the number of columns M = 3 # initializing the matrix res = [ [ i*j for i in range(N) ] for j in range(

  2. Pythonのさまざまな実装の違いは?

    ほとんどの開発者は、システムに実装されているPythonに関係なく、Pythonについて知っています。では、「python」とはどういう意味ですか、それは抽象インターフェースのpythonですか?一般的なPython実装(Cythonではない)であるCPythonを意味しますか?それとも私たちは完全に何か他のものを意味しますか?または、Jython、IronPython、PyPyを意味します。 上記のテクノロジーは一般的に名前が付けられ、一般的に参照されていますが、一部のテクノロジーはまったく異なる目的を果たします。 Pythonは、さまざまな方法で実装できる言語の仕様と考えることができま