-
Pythonで合計を最大化するためのパーティション配列
整数配列Aがあるとすると、配列を最大Kの長さの(連続した)サブ配列に分割する必要があります。分割後、各サブ配列の値は、そのサブ配列の最大値になるように変更されます。パーティション分割後、指定された配列の最大の合計を見つける必要があります。したがって、入力が[1、15、7、9、2、5、10]のようで、k =3の場合、出力は84になります。これは、配列が[15、15、15、9、10、10 、10] これを解決するには、次の手順に従います- Aと同じ長さの配列dpを1つ作成し、これを0で埋めます 0からA-1の長さの範囲のiの場合 =0の場合)それ以外の場合は0 temp:=A [i]
-
Pythonでの1つのスワップによる以前の順列
正の整数(必ずしも一意ではない)の配列Aがあるとすると、1回のスワップで作成できるAよりも小さい辞書式順序で最大の順列を見つける必要があります(Aスワップは2つの数値A[i]とA [j])。不可能な場合は、同じ配列を返します。したがって、配列が[3,2,1]のような場合、2と1を交換することにより、出力は[3,1,2]になります これを解決するには、次の手順に従います- n:=Aのサイズ 範囲n–2から-1までの左側 A [left + 1]の場合、中断します 要素:=0、インデックス:=0 右の場合は左+1からn A [right] 要素の場合、 要素=A[右] インデックス
-
Pythonの遠いバーコード
倉庫にバーコードの列があるとします。 i番目のバーコードはbarcode[i]です。隣接する2つのバーコードが同じにならないように、バーコードを再配置する必要があります。したがって、入力が[1,1,1,2,2,2]の場合、出力は[2,1,2,1,2,1]になります。 これを解決するには、次の手順に従います- dという名前のマップを1つ作成します バーコード配列に存在する数値の頻度をdに保存します x:=空のリスト すべてのキーと値のペアをxに挿入します i:=0 res:=長さがバーコードと同じリストを作成し、[0]を入力します 頻度に基づいてxを並べ替える whilei<結果の
-
Pythonで等しい行の最大数の列を反転する
0と1で構成される行列があるとすると、行列内の任意の数の列を選択して、その列のすべてのセルを反転できます。セルを変換すると、そのセルの値が0から1または1から0に変更されます。いくつかのフリップの後、すべての値が等しい行の最大数を見つける必要があります。したがって、行列が-のような場合 0 0 0 0 0 1 1 1 0 出力は2になります。これは、最初の2列の値を変換した後、最後の2行の値が等しいためです。 これを解決するには、次の手順に従います- x:=行列、m:=行数、n:=列数、r:=0 xの各要素iについて c:=0
-
Pythonでの文字タイルの可能性
タイルのセットがあり、各タイルに1文字のタイル[i]が印刷されているとします。私たちが作ることができる文字の可能な空でないシーケンスの数を見つけてください。したがって、入力が「AAB」の場合、出力は8になります。シーケンスは「A」、「B」、「AA」、「AB」、「BA」、「AAB」、「ABA」、「BAA」です。 これを解決するには、次の手順に従います- カウントされる1つのdfs()を定義します 合計:=0 1から26の範囲のiの場合 count [i] =0の場合、残りをチェックせずに次の反復に進みます count [i]を1減らし、合計を1増やします sum:=sum + df
-
Pythonのラベルからの最大値
アイテムのセットがあるとします。i番目のアイテムには値values[i]とラベルlabels[i]があります。次に、これらのアイテムのサブセットSを取得します。たとえば、- | S | <=num_wanted ラベルLごとに、ラベルLのSに存在するアイテムの数は<=use_limitです。 サブセットSの可能な最大の合計を見つける必要があります。 たとえば、入力がvalues =[5,4,3,2,1]のようで、ラベルが[1,1,2,2,3]、num_wanted =3、use_limit =1の場合、出力は9になります。 。これは、1番目、3番目、5番目の項目でサブセットが選択さ
-
Pythonでのカープーリング
最初に乗客が利用できる空席のある車両があるとします。車両は東にしか走行しないため、向きを変えて西に走行することはできません。旅行のリスト、trip [i] =[num_passengers、start_location、end_location]を指定しました。これには、i番目の旅行に関する情報が含まれています。つまり、乗車する必要のある乗客の数と、乗車する場所です。そしてそれらを降ろします。ここでは、位置は、車両の最初の位置から真東にあるキロメートル数として示されています。私たちのモジュールは、指定されたすべての旅行ですべての乗客を乗せたり降ろしたりできる場合にのみtrueを返します。したが
-
Pythonでの企業のフライト予約
n個のフライトがあり、それらに1からnまでのラベルが付けられているとします。フライト予約のリストがあります。 i番目の予約は、bookings [i] =[i、j、k]を使用することを示します。これは、iからjまでのラベルが付いたフライトからk席を予約したことを意味します。長さnの配列回答を検索し、各フライトで予約された座席数をラベル順に示します。したがって、入力が[[1,2,10]、[2,3,20]、[2,5,25]]のようで、n =5の場合、出力は[10、55、45、25、 25]。 これを解決するには、次の手順に従います- res:=サイズnの配列を1つ作成し、これを0で埋めます
-
Pythonでの最長のパフォーマンス間隔
時間リストがあるとすると、これは特定の従業員の1日あたりの労働時間数のリストです。ここで、1日は、労働時間数が(厳密に)8を超える場合にのみ、疲れた日と見なされます。1つの良好な間隔とは、疲れた日数がその数よりも厳密に多い日数の間隔です。疲れない日の。パフォーマンスが最も長い間隔の長さを見つける必要があります。したがって、入力が[9,9,6,0,6,6,9]のようである場合、出力は3になります。これは、パフォーマンスが最も長い間隔が[9,9,6] これを解決するには、次の手順に従います- temp:=0とans:=0を設定し、1つのマップdを作成し、corner:=0 0から時間配列
-
Pythonでバージョン番号を比較する
version2の場合、1を返します。それ以外の場合、バージョン1<バージョン2の場合は-1を返します。それ以外の場合は0を返します。バージョン文字列は空ではなく、数字とドット(。)文字のみが含まれていると見なすことができます。ドット文字は小数点を表すものではなく、数値シーケンスを区切るために使用されます。したがって、たとえば、2.5は「2.5」または「バージョン3の途中」ではなく、2番目の第1レベルのリビジョンの5番目の第2レベルのリビジョンです。 バージョン番号の各レベルのデフォルトのリビジョン番号は0であると想定できます。たとえば、バージョン番号3.4の第1レベルと第2レベルのリビジョ
-
Pythonで指定された範囲の数値のリストを作成する
Pythonは、さまざまなライブラリとメソッドを通じて、データ操作のあらゆる要件を処理できます。指定された数値のペアの間にあるすべての数値を生成する必要がある場合は、Pythonの組み込み関数と一部のライブラリを使用できます。この記事では、そのようなアプローチについて説明します。 範囲の使用 range()関数は、デフォルトで0から始まり、指定された数で終わる1ずつ増加する一連の数値を返します。必要に応じて、開始、終了、および増分ステップを呪いで変更できます。 例 def getnums(s, e,i): return list(range(s, e,i)) #
-
Pythonで分割されたカスタムリスト
データ分析は、データを移動するためにラングリングする必要がある複雑なシナリオを投げかけます。このコンテキストでは、大きなリストを取得し、要件に従ってそれを多くのサブリストに分割する方法を見てみましょう。この記事では、これを実現するためのアプローチについて説明します。 zipおよびforループ付き このアプローチでは、リストダイシングを使用して、分割が発生する必要があるポイントから要素を取得します。次に、zipとforループを使用して、forループを使用してサブリストを作成します。 例 Alist = ['Mon', 'Tue', 'Wed',
-
Pythonでの10進数から2進数へのリスト変換
用途の広い言語であるPythonは、データ処理中に発生する多くの要件を処理できます。 10進数を2進数に変換する必要がある場合は、次のPythonプログラムを使用できます。 フォーマットの使用 フォーマッタの文字を使用して、数値をフォーマットする基数(10進数、16進数、8進数、または2進数)を示すことができます。以下の例では、フォーマッターを0:0bとし、整数をフォーマット関数に供給します。フォーマット関数は、バイナリに変換する必要があります。 例 Dnum = 11 print("Given decimal : " + str(Dnum)) # Decimal t
-
Pythonで範囲内の要素を削除する
Pythonから単一の要素を削除するのは、要素のインデックスとdel関数を使用することで簡単です。ただし、インデックスのグループの要素を削除する必要がある場合があります。この記事では、インデックスリストで指定されている要素のみをリストから削除する方法について説明します。 sortとdelの使用 このアプローチでは、削除が発生する必要があるインデックス値を含むリストを作成します。リストの要素の元の順序を保持するために、それらを並べ替えて逆にします。最後に、これらの特定のインデックスポイントの元の指定されたリストにdel関数を適用します。 例 Alist = [11,6, 8, 3, 2] #
-
Pythonで反復しながら辞書からアイテムを削除する
Pythonディクショナリは、順序付けられておらず、変更可能で、インデックスが付けられているコレクションです。それらにはキーと値があり、各アイテムはキーを使用して参照されます。この記事では、辞書からアイテムを削除する方法について説明します。 キーでのdelの使用 このアプローチでは、削除する必要のあるキー値をキャプチャします。 del関数を適用すると、それらのキーのキーと値のペアが削除されます。 例 # Given dictionary ADict = {1: 'Mon', 2: 'Tue', 3: 'Wed',4:'Thu',
-
Pythonのリストコンテンツを使用した辞書の作成
コレクションタイプをあるタイプから別のタイプに変更することは、Pythonで非常に頻繁に必要になります。この記事では、複数のリストが指定されている場合に辞書を作成する方法を説明します。課題は、これらすべてのリストを組み合わせて、辞書キー値形式でこれらすべての値を収容する1つの辞書を作成できるようにすることです。 zip付き zip関数を使用して、以下に示すように、さまざまなリストの値を組み合わせることができます。以下の例では、3つのリストを入力として受け取り、それらを組み合わせて1つの辞書を形成しています。リストの1つは辞書のキーを提供し、他の2つのリストは各キーのファイルされた値を保持しま
-
Pythonでのタプル変換のリストへの辞書
コレクションタイプをあるタイプから別のタイプに変更することは、Pythonで非常に頻繁に必要になります。この記事では、ディクショナリに存在するキーと値のペアからタプルを作成する方法を説明します。キーと値のペアのそれぞれがタプルになります。したがって、最終的なリストは、要素がタプルであるリストです。 items()を使用 各キーと値のペアを反復処理できる辞書のitemsメソッドを使用します。次に、forループを使用して、これらの値をタプルにパックします。これらすべてのタプルを最終リストに入れます。 例 dictA = {'Mon': '2 pm', '
-
Pythonの値としてインデックスを持つ辞書
この記事では、頻繁に使用される別のPythonコレクションであるlistから辞書を作成する方法を学習します。インデックスまたはキーはリストコンテンツの一部ではありません。ただし、辞書では、値と呼ばれるすべての要素にキーまたはインデックスを付加する必要があります。 列挙の使用 enumerate関数は、enumerateオブジェクトのキーとしてカウンターを追加します。したがって、これを特定のリストに適用し、forループを使用します。これにより、列挙関数によってキーが生成される必要な辞書が作成されます。 例 Alist = ['Mon', 'Tue', '
-
Pythonでの重複を含む2つのリストの違い
2つのリストの違いを見つける必要がある場合があります。また、最初のリストの要素が2番目のリストに存在する場合、それらが削除される数学的減算も意味します。重複は保持されます。以下は、これを実現するためのアプローチです。 要素の数を追跡するコレクションモジュールのCounterメソッドを使用できます。まっすぐな数学的減算により、望ましい結果が得られます。最終結果では、最初のリストと2番目のリストの間の要素の出現回数によって要素が決まります。 例 from collections import Counter # initializing lists listA = ['Mon'
-
Pythonで2つのリストを分割する
2つのリストの要素は、Pythonを使用した一部のデータ操作アクティビティの除算操作に関与する可能性があります。この記事では、これを実現する方法を説明します。 zip付き zip関数は、指定された2つのリストを要素ごとに組み合わせることができます。これらの要素の各ペアに除算数学演算子を適用します。結果を新しいリストに保存します。 例 # Given lists list1 = [12,4,0,24] list2 = [6,3,8,-3] # Given lists print("Given list 1 : " + str(list1)) print("Giv