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

Pythonでのk回の操作後に可能な最小値を見つけるプログラム


numsと呼ばれる数値のリストと別の値kがあるとします。ここで、リスト内の任意の要素から1を引くことができる操作について考えてみましょう。この操作はk回実行できます。このような操作をk回行​​った後、リストから可能な最小の最大値を見つける必要があります。

したがって、入力がnums =[3、4、6、5] k =6のような場合、出力は3になります。これは、4を1回、6を3回、5を2回減らして、[3,3,3、 3]。

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

  • 番号を逆の順序で並べ替えます
  • i:=0
  • curr:=nums [0]
  • k> 0の場合、do
    • i
    • i:=i + 1
  • k> =iの場合、
    • k:=k-i
    • curr:=curr-1
  • それ以外の場合、
    • リターンカー
  • リターンカー
  • 理解を深めるために、次の実装を見てみましょう。

    class Solution:
       def solve(self, nums, k):
          nums.sort(reverse=True)
          i = 0
          curr = nums[0]
          while k > 0:
             while i < len(nums) and nums[i] == curr:
                i += 1
             if k >= i:
                k -= i
                curr -= 1
             else:
                return curr
          return curr
    
    ob = Solution()
    nums = [3, 4, 6, 5]
    k = 6
    print(ob.solve(nums, k))

    入力

    [3, 4, 6, 5], 6

    出力

    3

    1. Pythonでマージした後も、最小数の色を見つけるプログラムが残っています

      色のリスト(R、G、B)があるとします。これで、2つの異なる色が隣り合っている場合、それらは3番目の色の単一の色のアイテムに変換できます。そのような変換の可能なシーケンスの後に残っているそれらの最小数を見つける必要があります。 したがって、入力がcolors =[G、 R、 G、 B、 R]の場合、以下のように変換できるため、出力は1になります- これを解決するには、次の手順に従います- n:=色のサイズ 色に異なる色が1つしかない場合は、 return n n <=1の場合、 return n x:=0 d:=キーと値のペアを持つマップ{( R、1)、(

    2. リスト内の最大要素と最小要素の位置を見つけるPythonプログラム?

      Pythonでは、最大要素、最小要素、およびそれらの位置も非常に簡単に見つけることができます。 Pythonはさまざまな組み込み関数を提供します。 min()は配列の最小値を見つけるために使用され、max()は配列の最大値を見つけるために使用されます。 index()は、要素のインデックスを見つけるために使用されます。 アルゴリズム maxminposition(A, n) /* A is a user input list and n is the size of the list.*/ Step 1: use inbuilt function for finding the positi