Python

 Computer >> コンピューター >  >> プログラミング >> Python
  1. Pythonの2Dグリッドでサイクルを検出するプログラム

    サイズmxnのグリッドと呼ばれる文字の2D配列が1つあるとします。内部のサイクルを検出できるかどうかを確認する必要があります。ここで、サイクルとは、同じ位置で開始および終了するグリッド内の長さ4以上のパスです。現在のセルの値が同じである場合、4つの方向(上、下、左、または右)に移動でき、一部のセルに再度アクセスすることはできません。 したがって、入力が次のような場合 m m m p m k m m m m s m f t m m 緑のセルがサイクルを形成しているため、出力はTrueになります。 これを

  2. グラフがPythonのすべての人によってトラバース可能かどうかを確認するプログラム

    0からn-1までの番号が付けられたn個の頂点を含むグラフが与えられたとします。グラフは無向であり、各エッジには重みがあります。グラフには3種類の重みを設定でき、各重みは特定のタスクを示します。グラフをトラバースできるのは、ジャックとケーシーの2人です。エッジの重みが1の場合、ジャックはグラフをトラバースできます。重みが2の場合、ケーシーはグラフをトラバースできます。エッジの重みが3の場合、両方がグラフをトラバースできます。グラフを両方でトラバース可能にするために必要なエッジをすべて削除する必要があります。ジャックとケーシー。グラフをトラバース可能にするために削除するエッジの数を返します。トラバ

  3. 文字列がPythonの部分文字列ソート操作で変換可能かどうかをチェックするプログラム

    2つの数値文字列sとtがあるとします。次の操作を何度でも使用して、文字列sからtに変換します。1。sで空でない部分文字列を選択し、文字が昇順になるようにインプレースで並べ替えます。文字列sを文字列tに変換できるかどうかを確認する必要があります。 45963のようにsをtに変換できるため、出力はTrueになります。 これを解決するには、次の手順に従います- Places:=デフォルト値タイプがリストであるマップ sから0までの範囲サイズのiの場合、実行します key:=s [i] as integer 場所の最後にiを挿入[キー] tの各eについて、実行し

  4. Pythonのストーンゲームで最大スコアを見つけるプログラム

    いくつかの石が一列に配置されており、これらの石のそれぞれに、配列stoneValueで指定された関連付けられた番号があるとします。各ラウンドで、Amalは行を2つの部分に分割し、Bimalは各部分の値を計算します。これは、この部分のすべての石の値の合計です。 Bimalは最大値の部分を破棄し、Amalのスコアは残りの部分の値だけ増加します。 2つの部分の値が同じである場合、BimalはAmalにどちらの部分を破棄するかを決定させます。次のラウンドは残りの部分から始まります。石が1つだけ残っていると、ゲームは終了します。アマルが得ることができる最大のスコアを見つける必要があります。 したがって

  5. PythonでK-sumペアの最大数を見つけるプログラム

    numsという配列と別の値kがあるとします。 1つの操作で、合計がkに等しいnumsから2つの要素を選択し、それらを配列から削除できます。アレイで実行できる操作の最大数を見つける必要があります。 したがって、入力がnums =[8,3,6,1,5] k =9のような場合、合計が9である[3,6]を削除してから、[8,1]を削除できるため、出力は2になります。 ]その合計も9です。 これを解決するには、次の手順に従います- counter:=numで表示される各アイテムの頻度を保持するマップ res:=0 カウンターのnumごとに、を実行します。 counter [k-num]がゼ

  6. Pythonで最も近いデザートコストを見つけるためのプログラム

    baseCostsという2つの配列があり、そこからn個のアイテムがあり、baseとtoppingCostsがあり、それらからm個のアイテムがあり、トッピングを選択でき、ターゲット値もあります。デザートを作るには、これらのルールに従う必要があります。 ベースは1つだけでなければなりません。 1つ以上のトッピングを追加することも、トッピングをまったく追加しないこともできます。 トッピングの種類ごとに最大2つあります。 ここで、baseCosts [i]は、i番目のアイスクリームベースの価格を表します。 toppingCosts [i]は、i番目のトッピングの1つの価格を表し

  7. Pythonで連続する2進数の連結を見つけるプログラム

    数値nがあるとすると、1からnのバイナリ表現を1つずつ連結して、バイナリ文字列の10進値を見つける必要があります。答えが大きすぎる場合は、10 ^ 9+7を法として答えを返します。 したがって、入力がn =4の場合、出力は220になります。これは、バイナリ表現を1から4に連結すると、 1 + 10 + 11 + 100 =110111000になるため、これはバイナリです。 220の表現。 これを解決するには、次の手順に従います- ans:=1 m:=10 ^ 9 + 7 2からnの範囲のiについては、 ans:=シフトans(iのビット長)回数 ans:=(ans + i)

  8. Pythonで最小の操作数で等和配列を見つけるプログラム

    nums1とnums2という名前の2つの配列があるとします。配列の値は1から6(両端を含む)です。 1つの操作で、任意の配列の任意の値を1〜6の任意の値に更新できます。nums1の値の合計をnums2の値の合計と等しくするために必要な操作の最小数を見つける必要があります。不可能な場合は-1を返す必要があります。 したがって、入力がnums1 =[1,5,6]、nums2 =[4,1,1]の場合、nums2を[4,1,1]から[4、最初の操作では1,6]、2番目の操作では[4,2,6]で、同じものをnums1に等しくします。 これを解決するには、次の手順に従います- s1:=nums1

  9. Pythonでソートされた配列の絶対差の合計を見つけるプログラム

    配列numsがあり、それが降順ではない順序でソートされているとします。 result [i]がnums[i]と配列内の他のすべての要素との絶対差の合計になるように、numsと同じ長さのresultという配列を作成する必要があります。 したがって、入力がnums =[5,7,12]のような場合、出力は[9、7、12]になります。 | 5-5 | + | 5-7 | + | 5-12 | =0 + 2 + 7 =9 | 7-5 | + | 7-7 | + | 7-12 | =2 + 0 + 5 =7 | 5-12 | + | 7-12 | + | 12-12 | =7 + 5 + 0

  10. Pythonで最大幅ランプを見つけるプログラム

    配列numsがあるとすると、ランプはタプル(i、j)であり、i

  11. Pythonで石のゲームの勝者を見つけるためのプログラム

    AmalとBimalがゲームをプレイしていて、Amalの番が最初であるとします。ゲームは以下のようなものです- 石が山積みになっています。各プレイヤーは山から石を取り、その石の位置に基づいてポイントを受け取ることができます。アマルとビマルは石を異なる方法で評価するかもしれません。 同じ長さの2つの配列、A_ValuesとB_Valuesがあります。各A_Values[i]とB_Values[i]は、それぞれAmalとBimalがi番目の石をどのように評価するかを表します。ここでスコアが最大の場合、すべての石が取り出された後、彼が勝者になります。同点の場合、ゲームは引き分けになります。両方の

  12. Pythonで最小数の10進数に分割するプログラム

    文字列形式の数値nがあるとします。合計がnに等しくなるように、必要な最小の10進数を見つける必要があります。 10進数は、0または1のいずれかの桁を持つ10進数です。 したがって、入力がn =132の場合、132は3つの10進数(10 + 11 + 111)の合計であるため、出力は3になります。 これを解決するには、次の手順に従います- 結果:=1 nの各iについて、 iが{0,1}にいない場合は、 result:=結果とiの最大値 結果を返す 例 理解を深めるために、次の実装を見てみましょう- def solve(n):    result =

  13. Pythonで数値が3の累乗の合計であるかどうかを確認するプログラム

    数nがあるとすると、nを3のべき乗の合計として表すことができるかどうかを確認する必要があります。 y =3 ^ xのような整数xが存在する場合、整数yは3の累乗であると言われます。 したがって、入力がn =117の場合、117 =3 ^ 4 + 3 ^ 3 + 3 ^ 2 + =81 + 27 + 9であるため、出力はTrueになります。 これを解決するには、次の手順に従います- 16から0の範囲のiの場合、1ずつ減らします。 =3 ^ iの場合、 n:=n-3 ^ i 0の場合、 Falseを返す Trueを返す 例 理解を深めるた

  14. Pythonでストーンゲームのスコアの最小差を見つけるプログラム

    stones[i]が左からi番目の石の値を表すstonesという配列があるとします。 2人の友人のAmalとBimalがこれらの石を使ってターン制のゲームを再プレイし、Amalが常に最初に開始します。 n個の石が一列に並んでいます。各プレイヤーは、列から左端の石または右端の石のいずれかを削除し、列の残りの石の値の合計に等しいポイントを取得できます。より高いスコアを獲得する人が勝ちます。さて、Bimalは常にこのゲームに負けることを発見したので、スコアの差を最小限に抑えることにしました。アマルの目標は、スコアの差を最大化することです。したがって、AmalとBimalの両方が最適に再生される場合、

  15. Pythonのすべての部分文字列の美しさの合計を見つけるプログラム

    文字列sがあるとします。すべてのサブストリングの美しさの合計を見つける必要があります。文字列の美しさは、実際には最も頻度の高い文字と最も頻度の低い文字の頻度の違いです。したがって、文字列が「abaacc」の場合、その頻度は3-1=2です。 したがって、入力がs =xxyzyの場合、美しさがゼロ以外のサブ文字列は[xxy、 xxyz、 xxyzy、 xyzy、 yzy]であるため、出力は5になります。それぞれに美しさの価値があります1。 これを解決するには、次の手順に従います- res:=0 0からs-1のサイズのiの場合、実行します 範囲i+2からs-1のサイズのjの場

  16. Pythonで最大消去値を見つけるプログラム

    nums(正の値のみ)という配列があり、一意の要素を含むサブ配列を消去するとします。サブアレイ要素の合計であるスコアを取得します。正確に1つのサブアレイを消去することで得られる最大スコアを見つける必要があります。 したがって、入力がnums =[6,3,2,3,6,3,2,3,6]のような場合、最適なサブ配列は[6,3,2]または[2,3,6]なので、合計は11です。 これを解決するには、次の手順に従います- 見た:=新しい地図 ans:=sum:=0 l:=0 インデックスrと値xnumごとに、実行します xが表示されている場合、 インデックス:=見た[x] l <=イン

  17. Pythonで特定の合計を形成するために追加する最小要素を見つけるプログラム

    numsという配列があり、2つの値のlimitとgoalがあるとします。 | nums [i] |であるため、配列は特別です。 <=0から配列のサイズまでのすべてのiの制限-1。配列の合計を目標と同じにするために挿入する要素の最小数を見つける必要があります。配列要素は制限値を超えてはなりません。 したがって、入力がnums =[2、-2,2]、limit =3、goal =-4のような場合、2つの(-3)を追加できるため、出力は2になり、配列は次のようになります。 [2、-2,2、-3、-3] これを解決するには、次の手順に従います- s:=numsに存在するすべての要素の合計

  18. Pythonのジャンプゲームで取得できる最大スコアを見つけるためのプログラム

    numsという配列と別の値kがあるとします。インデックス0にいます。1回の移動で、配列の境界の外に出ることなく、最大でkステップ右にジャンプできます。配列の最終インデックスに到達したいと思います。ジャンプの場合、スコアを取得します。これは、配列内でアクセスした各インデックスjのすべてのnums[j]の合計です。取得できる最大スコアを見つける必要があります。 したがって、入力がnums =[1、-2、-5,7、-6,4] k =2のような場合、このシーケンスでジャンプするため、出力は10になります[1、-2、7、 4]、それから私達は最大のポイントを得るでしょう、そしてそれは10です。 これ

  19. Pythonの最初から最後のノードまでの制限されたパスの数を見つけるプログラム

    無向加重連結グラフが1つあるとします。グラフにはn個のノードがあり、1からnまでのラベルが付けられています。開始から終了までのパスは、[z0、z1、z2、...、zk]のようなノードのシーケンスです。ここで、z0は開始ノード、zkは終了ノードであり、ziとzi+1の間にエッジがあります。ここで0<=i dist(zi + 1)(0 <=i <=k-1)も満たす特別なパスです。したがって、ノード1からノードnまでの制限されたパスの数を見つける必要があります。答えが大きすぎる場合は、10 ^ 9+7を法として答えを返します。 したがって、入力が次のような場合 3つの制限されたパス(1,2

  20. Pythonで特定の文字列内の個別のサブ文字列の数を見つけるプログラム

    sで示される部分文字列が与えられたとします。一意の部分文字列を見つけて、これらの部分文字列の数を出力として返す必要があります。 したがって、入力がs =prrstvtのような場合、出力は26になります。 個別の部分文字列は-になります pr、rrs、st、rr、tv、rstv、stvt、prrstv、prrstvt、rrstvt、s、prrst、stv 、 rrstv、 rst、 v、 tvt、 rstvt、 r、 rs、 vt、 t、 prr、 p、 rrst、および「prrs」。 これを解決するには、次の手順に従います- 訪問:=新しい地図 各インデックスind、および値let

Total 8994 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:360/450  20-コンピューター/Page Goto:1 354 355 356 357 358 359 360 361 362 363 364 365 366