Python

 Computer >> コンピューター >  >> プログラミング >> Python
  1. Pythonで座席をシャッフルした後、飛行機の最後の人に割り当てられた座席を取得する確率を見つけるプログラム

    飛行機の座席数を表す整数nがあるとします。ここで、最初の乗客がチケットを紛失したと考えて、ランダムな座席を選びます。これで他の全員がチケットを手に入れましたが、すでに席が空いている場合は、空いている席もランダムに選択します。最後の人が割り当てられた席を取得する確率を見つける必要があります。 したがって、入力がn =5の場合、出力は0.5になります。複数の人がいる場合、正しい席を持っているかどうかにかかわらず、答えは常に一定です。したがって、確率は常に50%ですが、 n =1の場合、100%になります これを解決するには、次の手順に従います- 1の場合は「50%」を返し、それ以外の場合は

  2. Pythonでほぼ同じ単語のペアがあるかどうかを確認するプログラム

    各単語が同じ長さである単語と呼ばれる小文字の文字列のリストがあるとします。 1文字だけが異なる文字列が2つあるかどうかを確認する必要があります。 したがって、入力がwords =[seed、 pick、 lick、 root、 live]の場合、pickとlickはほぼ同じであるため、出力はTrueになります。 これを解決するには、次の手順に従います- s:=新しいセット 単語内の各単語について、 単語内の各インデックスiと単語wについて、実行します 単語の部分文字列[インデックス0からi-1まで]連結*連結単語[インデックスi+1から終了まで]がsに存在する場合、 Trueを返す

  3. 文字列をチェックするプログラムが回文であるか、Pythonで同等のペアを使用していないか

    sという小文字のアルファベット文字列があり、「pairs」というペアのリストもあるとします。ペアの各要素には2つの文字列[a、b]があり、文字「a」と「b」は同じと見なされます。 [a、b]と[b、c]のように2つのペアがある場合、aとbは同等であり、bとcも同等であると言えます。したがって、aとcも同等です。そして、任意の値aまたはbはそれ自体と同等です。 sがパリンドロームであるかどうかを、与えられた同値関係でチェックする必要があります。 したがって、入力がs =raceckt pair =[[r、 t]、[a、 k]、[z、 x]]の場合、出力は次のようになります。 beTrue、「a

  4. Pythonで幸せにできる最大人数を見つけるためのプログラム

    リストの顧客と別のリストのムードがあり、これら2つが同じ長さであり、別の整数kもあるとします。これで、毎分iで、customers [i]の人数が来店し、mood [i] =1の場合は顧客が満足し、mood [i]=0の場合は悲しいことを示します。気分のサイズkのサブリストを1に設定できます。最後に、幸せにできる最大人数を見つける必要があります。 したがって、入力がcustomers =[2、3、6、6、3] mood =[1、1、0、0、0] k =2の場合、mood [2を設定すると、出力は17になります。 ]とmood[3]を1にすると、合計の気分は2 + 3 + 6 + 6=17人の

  5. Pythonで有効な等差数列を見つけるクエリの数をチェックするプログラム

    numsという番号のリストがあり、クエリのリストもあるとします。各クエリ要素に[i、j]が含まれている場合。したがって、このクエリは、[i、j](両方を含む)からのnumsのサブリストが等差数列であるかどうかを尋ねています。したがって、最後に、trueを返すクエリの数を見つける必要があります。 したがって、入力がnums =[2、4、6、8、7、6、5、2]クエリ=[[3、4]、[0、3]、[2、4]]のようである場合、 [2、4、6、8]は等差数列であるため、出力は2になります。したがって、クエリ[0、3]はtrueです。 [8、7]も等差数列であるため、クエリ[3、4]も真です。ただし、

  6. Pythonで各方向が4分の1回発生するように、方向文字列のバランスをとるプログラム

    北、南、西、東にそれぞれ「N」、「S」、「W」、「E」の4つの方向を持つ文字列sがあるとします。 4つの方向のそれぞれがそれぞれn/4回発生するように、更新できる最短のサブストリングのサイズを見つける必要があります。ここで、nはストリングsのサイズです。 したがって、入力がs =NNSWWESNの場合、出力は1になり、ここではnは8になり、8/4は2になります。したがって、最後のNをEに変更すると、すべての方向が2回存在します。 これを解決するには、次の手順に従います- n:=sのサイズ nが0の場合、 0を返す クォーター:=(n / 4)のフロア count:=sに存在する

  7. Pythonですべてのボールを現在の位置に移動するために必要な合計距離を示すリストを見つけるためのプログラム

    0と1のみを含むnumsというバイナリリストがあるとします。ここで、0は空のセルを示し、1はセルがボールで満たされていることを示します。サイズがnumssizeと同じである、たとえばLの新しいリストを見つける必要があります。ここで、L [i]は、すべてのボールをL[i]に移動するのに必要な合計距離に設定されます。ここで、ボールをインデックスjからインデックスiに移動する距離は| j--i|です。 したがって、入力がnums =[1、1、0、1]のような場合、出力は[4、3、4、5]になります。これは、 L [0] =| 0-0 | + | 1-0 | + | 3-0 | L [1]

  8. Pythonのバイナリリストで合計kのサブリストの数を見つけるプログラム

    0または1のバイナリリストがあるとします。 kという別の入力もあります。合計がkと同じサブリストの数を見つける必要があります。 したがって、入力がnums =[1、0、0、1、1、1、0、1] k =3の場合、サブリストは[1,0,0,1,1]であるため、出力は8になります。 ]、[0,0,1,1,1]、[0,0,1,1,1,0]、[0,1,1,1]、[0,1,1,1,0]、 [1,1,1]、[1,1,1,0][1,1,0,1]。 これを解決するには、次の手順に従います- sums:=マップには、最初はキー0のvalye1が含まれています r_sum:=0 ans:=0 nu

  9. Pythonで指定された範囲の数値の範囲のビットごとのANDを見つけるプログラム

    startとendの2つの値があるとすると、[start、end](両方を含む)の範囲内のすべての数値のビットごとのANDを見つける必要があります。 したがって、入力がstart =8 end =12の場合、出力は8がバイナリで1000、12がバイナリで1100になるため、1000 AND 1001 AND 1010 AND 1011AND1100は1000で8になります。 これを解決するには、次の手順に従います- n:=end-start + 1 x:=0 31から0の範囲のbの場合、1ずつ減らします。 2 ^ b

  10. Pythonでロボットが境界ボックス内を移動しているかどうかを確認するプログラム

    ロボットの動きを表す文字列sがあるとします。ロボットは現在(0、0)の位置にあり、北を向いています。移動文字列にはこれらの文字が含まれる場合があります 「F」で前進方向に移動、1ユニット 「L」で左に90度回転 「R」で右に90度回転 そのため、ロボットが順番にsの動きを繰り返す場合は、ロボットが決して離れない平面にボックスがあるかどうかを確認する必要があります。 したがって、入力がs =FFRFRFFRFの場合、ロボットは2ユニット北に移動するため、出力はTrueになります。次に、90度右に曲がって、1ブロック移動します。次に、もう一度90度右に回転し、2ユニット南に移動してから、も

  11. 要素の正方形がPythonで指定された範囲内にあるペアの数を見つけるプログラム

    nums1とnums2の2つの番号のリストがあるとします。また、下と上の2つの数字があります。 lower≤nums1[i]^2 + nums2 [j]^2≤upperとなるペアの数(i、j)を見つける必要があります。 したがって、入力がnums1 =[5、3、2] nums2 =[8、12、6] lower =10 upper =50の場合、ペアは(1、2)と( 2、2) 10 <=3 ^ 2 + 6 ^ 2 <<50 =10 <=45 <<50 10 <=2 ^ 2 + 6 ^ 2 <<50 =10 <=40 <<50 これを解決するには、次の手順に従います- 各要素をn

  12. 水平ブリックパターンの数を数えるプログラムは、Pythonのブリックのセットから作成できます

    れんがと呼ばれる数値のリストと、幅と高さの他の2つの値があるとします。ブリック[i]の各要素は、長さがブリック[i]単位、幅が1単位のブリックを表します。与えられた幅と高さのレンガの完全なレイアウトが得られるように、レンガを配置する方法の数を見つける必要があります。レンガは再利用できますが、水平にしか置くことができません。 したがって、入力がブリック=[2、1]幅=3高さ=2の場合、-であるため、出力は9になります。 これを解決するには、次の手順に従います- w:=幅と同じサイズのリストで、最初の位置に1を挿入し、残りは0です 0から幅の範囲のiについては、 w [i]がゼロ

  13. Pythonで指定された位置数の文字をシフトした後に最終的な文字列を取得するプログラム

    小文字の文字列sと、長さがsの長さと同じであるshiftsと呼ばれる整数の別のリストがあるとします。ここで、shifts [i]の各要素は、shifts[i]の位置でsの最初のi+1文字をシフトすることを示しています。シフトが「z」を横切る場合、それは「a」にラップアップされます。シフトをsに適用した後、結果の文字列を見つける必要があります。 したがって、入力がs =tomato shifts =[2、5、2、3、7、4]の場合、出力は qjcoesになるため、最初の文字を2桁シフトした後、t からvなので、文字列は「vomato」です。その後、最初の2文字は5桁です。文字列は「atmato

  14. Pythonで各ブラケットの深さの文字数をカウントするプログラム

    「X」、「(」、および「)」の3文字のみで構成される文字列sがあるとします。文字列にはバランスの取れた角かっこがあり、いくつかの「X」の間に入れ子になった角かっこが再帰的に存在する可能性があります。ブラケットの各深さで、最も浅い深さから最も深い深さまで、「X」の数を見つける必要があります。 したがって、入力がs =(XXX(X(XX))XX)のような場合、出力は[5、1、2]になります。 これを解決するには、次の手順に従います- 深さ:=-1 out:=新しいリスト sの各cについて、 cが(と同じ場合、 深さ:=深さ+ 1 それ以外の場合、cが )と同じ場合、 深度

  15. 循環循環リストにフォワードパスがあるか、Pythonにないかをチェックするプログラム

    numsという循環リストがあるとします。したがって、最初と最後の要素はネイバーです。したがって、任意のインデックス(i)から開始して、nums [i]が正の値の場合は、nums [i]のステップ数を前方に移動できます。それ以外の場合は、負の値の場合は後方に移動できます。パスが前方にのみ進むか、後方にのみ進むように、長さが1より大きいサイクルがあるかどうかを確認する必要があります。 1] これを解決するには、次の手順に従います- n:=numsのサイズ nが0と同じ場合、 Falseを返す saw:=サイズnの配列で、0で埋める numsの各要素xに対してxmodnを取得してn

  16. すべてのタスクをチェックするプログラムは、Pythonで指定されたサーバーコアを使用して実行できるかどうかを確認します

    2つのリストがあり、それらはコアとタスクであるとします。 cores [i]は、i番目のサーバーで使用可能なコアの数を示します。また、tasks [i]は、そのタスクを実行するために必要なコアの数を示します。各タスクは、1つのサーバーでのみ実行する必要があります。また、サーバーには複数のタスクを実行する必要がある場合があります。指定されたコアですべてのタスクを実行できるかどうかを確認する必要があります。 したがって、入力がコア=[10、7]タスク=[7、3、2、2、1]の場合、tasks[0]とtasks[1]を最初に配置できるため、出力はTrueになります。コア10を備えたサーバー、および

  17. Pythonでコインマトリックスが消えることから得られる最大のコインを見つけるためのプログラム

    各セル行列[r、c]がそのセルに存在するコインの数を表す2D行列があるとします。 matrix [r、c]からコインを拾うと、行(r --1)と(r + 1)のすべてのコインが消え、2つのセルのmatrix [r、c+1]と行列[r、c-1]。収集できるコインの最大数を見つける必要があります。 したがって、入力が次のような場合 2 8 7 6 10 10 4 2 5 9 2 3 コイン8、6、9、3でセルを選択できるため、出力は26になり、合計は26になります。 これを解決するには、次の手順に従います- 関数getma

  18. グラフに共通の到達可能なノードがあるかどうかをPythonでチェックするプログラム

    有向グラフのエッジリストがあり、ノードがn個あり、ノード名が0〜n-1であるとします。2つの整数値aとbもあります。 cからaに、またcからbに移動できるようなノードcがあるかどうかを確認する必要があります。 したがって、入力が次のような場合 また、a =2、b =3の場合、出力はTrueになります。これは、ここではc =0であるため、0から2、さらには0から3へのルートがあります。 これを解決するには、次の手順に従います- 関数DFS()を定義します。これは、グラフ、ノード、訪問済みを取得します ノードにアクセスしていない場合は、 ノードを訪問済みとしてマーク グラフ[ノード]

  19. Pythonでランレングスエンコードされたベクトルの内積を見つけるプログラム

    nums1とnums2の2つのリストがあるとします。これらの2つのリストはそれぞれ、ランレングスエンコード形式のベクトルを表しています。したがって、例として、ベクトル[1、1、1、2、2、2、2]は[3、1、4、2]として表されます。 (3つの1と4つの2があるため)。したがって、これら2つのベクトルの内積を見つける必要があります。 (内積は、2つのベクトルに存在する項目の要素ごとの乗算の合計です。) したがって、入力がnums1 =[2、7、5、3] nums2 =[3、5、4、2]の場合、ベクトルは[7、7、3、3]のようになるため、出力は109になります。 、3、3、3]•[5、5、5

  20. Pythonの特定の文字列で最小数のスワップで1をグループ化するプログラム

    0と1を含むバイナリ文字列input_strが与えられたとします。私たちのタスクは、指定された文字列の1を交換することにより、0と1をグループ化することです。最小限の数のスワップ操作を実行する必要があり、その値を返す必要があります。覚えておくべきことの1つは、隣接する値のみを交換できることです。 したがって、入力がinput_str =10110101のような場合、出力は4になります。 スワップは次のようになります- 10110101->01110101->01111001->01111010->01111100 スワップの総数:4。 これを解決するには、次の手

Total 8994 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:388/450  20-コンピューター/Page Goto:1 382 383 384 385 386 387 388 389 390 391 392 393 394