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

Pythonでリストをkより大きいサイズの厳密に増加するサブリストに分割するプログラム


numsと呼ばれる数値のリストと別の値kがあるとすると、各サブリストの長さがk以上で、厳密に増加するように、リストをサブリストリストに分割できるかどうかを確認する必要があります。リストを連続して分割する必要はありません。

したがって、入力がnums =[6、7、5、10、13] k =2のような場合、分割は[5、6]と[7、10、13]であるため、出力はTrueになります。

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

  • c:=numsの要素とそのカウントを含むマップ
  • max_count:=cのすべての頻度の最大値
  • max_count *k<=数値のサイズの場合はTrueを返します。それ以外の場合はfalseを返します

例(Python)

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

from collections import Counter
class Solution:
   def solve(self, nums, k):
      c = Counter(nums)
      max_count = max([v for k, v in c.items()])
      return max_count * k <= len(nums)
ob = Solution()
nums = [6, 7, 5, 10, 13]
k = 2
print(ob.solve(nums, k))

入力

[6, 7, 5, 10, 13], 2

出力

False

  1. PythonでサイズNの文字列を分割

    文字列sと整数nがあるとすると、sをnサイズに分割する必要があります。 したがって、入力がs =abcdefghijklmn、n =4の場合、出力は[abcd、efgh、ijkl、mn]になります。 これを解決するには、次の手順に従います- i:=0 f:=新しいリスト i

  2. 偶数要素と奇数要素を2つの異なるリストに分割するPythonプログラム。

    このプログラムでは、ユーザー入力リストを作成し、要素は奇数要素と偶数要素の混合物です。私たちの仕事は、これらのリストを2つのリストに分割することです。 1つは奇数の要素を含み、もう1つは偶数の要素を含みます。 例 Input: [1, 2, 3, 4, 5, 9, 8, 6] Output Even lists: [2, 4, 8, 6] Odd lists: [1, 3, 5, 9] アルゴリズム Step 1 : create a user input list. Step 2 : take two empty list one for odd and another for eve