Pythonで多数決した候補者をリストするプログラム
numsと呼ばれる番号のリストがあり、各番号が候補者への投票を表すとします。投票数がfloor(n / 3)を超える候補者のIDを、降順ではない順序で見つける必要があります。
したがって、入力がnums =[3、2、6、6、6、6、7、7、7、7、7]のようである場合、6と7は40であるため、出力は[6、7]になります。投票の割合。
これを解決するには、次の手順に従います-
- ans:=新しい空のセット
- リスト番号を並べ替える
- i:=0
- n:=numsのサイズ
- i
- nums [i]がnums>(n / 3)で出現する場合、
- nums[i]をansに挿入
- i:=i +(n / 3)
- nums [i]がnums>(n / 3)で出現する場合、
理解を深めるために、次の実装を見てみましょう-
例
class Solution: def solve(self, nums): ans = set([]) nums.sort() i = 0 n = len(nums) while i < len(nums): if nums.count(nums[i]) > n // 3: ans.add(nums[i]) i += n // 3 return sorted(list(ans)) ob = Solution() nums = [3, 2, 6, 6, 6, 6, 7, 7, 7, 7, 7] print(ob.solve(nums))
入力
[3, 2, 6, 6, 6, 6, 7, 7, 7, 7, 7]
出力
[6, 7]
-
リストを文字列に変換するPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 リストを指定すると、文字列型に変換する必要があります。 ここでは、上記の問題ステートメントを解決するための4つの異なるアプローチについて説明します- アプローチ1:空の文字列で連結を使用する。 例 def listToString(s): # empty string str1 = "" # traversal for ele in s:  
-
3Dリストを作成するPythonプログラム。
3Dリストは3D配列を意味します。このプログラムでは、整数要素を使用して3D配列を作成します。 例 Input: 3× 3 × 2 [[1,1,1],[2,2,2],[3,3,3]], [[4,4,4],[5,5,5],[6,6,6]] アルゴリズム Step 1: given the order of 3D list. Step 2: using for loop we create list and print data. サンプルコード # Python program to created 3D list import pprint def print3D(i,