Python

 Computer >> コンピューター >  >> プログラミング >> Python
  1. パーティション化できるサブリストの数を見つけるプログラム。指定されたリストは最終的にPythonでソートされます。

    numsという番号のリストがあるとします。リストをいくつかの個別のサブリストに分割してから、各部分を並べ替えることができます。後で全体としてnumsがソートされるように、分割できるサブリストの最大数を見つける必要があります。 したがって、入力がnums =[4、3、2、1、7、5]の場合、出力は2になります。これは、[4、3、2、1]や[7、 5] これを解決するには、次の手順に従います。 count:=0 main_sum:=0、sorted_sum:=0 numsの各要素xおよびnumsのソートされた形式のyについて、do main_sum:=main_sum + x

  2. 合計がPythonでkの倍数であるペアにリストを分割できるかどうかをチェックするプログラム

    numsと呼ばれる数値のリストと別の値kがあるとすると、各ペアの合計がkで割り切れるように、リストをペアに分割できるかどうかを確認する必要があります。 したがって、入力がnums =[4、7、2、5] k =6のような場合、指定されたリストを(4、2)と(8、1)のようなペアに分割できるため、出力はTrueになります。そしてそれらの合計は3で割り切れる。 これを解決するには、次の手順に従います。 numsに偶数の要素がある場合、 Falseを返す count:=サイズkのリストと0で埋める numsのnごとに、 count [n mod k]:=count [n mod k]

  3. Pythonでk日後の刑務所の独房の状態を見つけるプログラム

    バイナリリスト(リスト内の1と0)と別の値kがあるとします。 numsの各値は、刑務所の独房の状態を表します。1は占有されたセルを示し、0は空のセルを示します。セルに2つの隣接するセルがあり、両方が占有されているか、両方が空である場合、そのセルは毎日占有されます。それ以外の場合は、空になります。したがって、k日後の刑務所の独房の状態を見つける必要があります。 したがって、入力がnums =[1、0、1、0、0、0、0、0] k =1のような場合、出力は[0、1、1、0、1、1、1になります。 0]、最初と最後のインデックスは2つのネイバーを持つことができないため、占有できないことがわかります

  4. Pythonでターゲット合計を形成する個別の4倍の数を見つけるプログラム

    数値A、B、C、およびDの4つのリストがあり、ターゲット値もあるとすると、A [i] + B [となるような別個の4倍(i、j、k、l)の数を見つける必要があります。 j] + C [k] +D[l]はターゲットと同じです。 したがって、入力がA =[5、4、3] B =[8、4] C =[6、2] D =[4、10] target =23の場合、出力は3、4倍になります。 [5、8、6、4] [3、4、6、10] [3、8、2、10]です。 これを解決するには、次の手順に従います。 count:=0 m:=空の地図 Aの各iについて、 Bの各jについて、 m [i + j]

  5. Pythonでシャッフルされた人々のキューを回復するプログラム

    各行に2つの値[height、count]が含まれている2Dマトリックスがあるとします。これらは、人が身長を指定し、その前に少なくとも同じ高さの人が「count」人いることを示します。ここで、このキューがシャッフルされていると考えてください。キューの元の順序を復元する必要があります。 したがって、入力が次のような場合 2 2 4 0 5 0 その場合、出力は次のようになります 4 0 5 0 2 2 これを解決するには、次の手順に従います。 N:=行列の行数 高さの増加とカ

  6. Pythonで特定の数のグレイコードを変換するプログラム

    番号nがあるとすると、その指定された番号のグレイコード(つまり、n番目のグレイコード)を見つける必要があります。私たちが知っているように、グレイコードは、連続する各数値の値が正確に1ビット異なるように2進数を並べ替える方法です。いくつかのグレイコードは次のとおりです:[0、1、11、10、110、111など] したがって、入力がn =12の場合、12はバイナリで(1100)であるため、出力は10になり、対応するグレイコードは(1010)になり、10進数は10に相当します。 これを解決するには、次の手順に従います。 関数solve()を定義します。これにはnがかかります nが0と同じ場

  7. Pythonでk個の連続する重複文字を削除した後に文字列を検索するプログラム

    文字列sと別の値kがあるとすると、最初のk個の連続する重複文字を繰り返し削除し、最後の文字列を返します。 したがって、入力がs =paaappmmmma k =3の場合、出力は maになります。これは、3つのaを削除してpppmmmmaを取得する場合と同じです。次に、3つの「p」を削除して「mmmma」を取得します。次に、4つの「m」のうち3つを削除して、「ma」を取得します。 これを解決するには、次の手順に従います。 次の手順を無限に実行します。 count:=0 chars:=sから一意の文字を取得する 文字の各文字cについて、 k個の連続するcがsにある場合、 sからk個の

  8. 現在の合計でリストインデックスを更新して、Pythonでターゲットに到達するかどうかを確認するプログラム

    targetという番号のリストがあるとします。ここで、指定されたリストと同じ長さのリストXを考えてみましょう。Xは1で埋められています。次の操作は何度でも実行できます。Xの任意のインデックスiを取得し、X [i]を現在のXの合計に設定します。最後に、Xをターゲットに変換できるかどうかを確認します。 したがって、入力がtarget =[5、9、3]のような場合、出力は最初はX =[1、1、1]であるためTrueになり、合計3で更新すると、配列は[1、1 、3]、現在の合計は5、更新[5、1、3]、現在の合計9なので、リストは[5、9、3]になり、ターゲットになります。 これを解決するには、次

  9. C++で三項式を評価するプログラム

    三項式を保持する式があるとすると、式の結果を評価する必要があります。 TrueとFalseのTとF、および「?」などのいくつかの値をサポートします。および「:」文字。いくつかのプロパティがあります: 指定された文字列の長さは10000以下である必要があります。 条件式は右から左にグループ化します。 条件は常にTまたはFのいずれかになります。したがって、条件が数字になることはありません。 式の結果は常にTまたはFに評価されます。 たとえば、入力が「T? T? F:T:T」なので、出力はFになります。 これを解決するには、次の手順に従います。 ret:=空の文字列、n:=sのサイズ、

  10. Pythonでリンクリストの内部ノードを逆にするプログラム

    リンクリストがあり、2つの値iとjもあるとすると、リンクリストをiからj番目のノードに逆にする必要があります。そして最後に、更新されたリストを返します。 したがって、入力が[1,2,3,4,5,6,7,8,9] i =2 j =6の場合、出力は[1、2、7、6、5、4 、3、8、9、] これを解決するには、次の手順に従います。 prev_head:=nullと同じ値で、ノードを指すリンクリストノードを作成します prev:=prev_head、curr:=node 0からiまでのすべての値を繰り返し、実行します prev:=curr、curr:=next of curr

  11. Pythonで区切り文字のセットで区切られた単語を逆にするプログラム

    文字列と区切り文字のセットがあるとすると、区切り文字の相対的な順序は変更しないで、文字列内の単語を逆にする必要があります。 したがって、入力がs =Computer / Network:Internet | tutorialspoint delims =[/、 :、|]の場合、出力はtutorialspoint / Internet:Network | Computerになります。 これを解決するには、次の手順に従います。 単語:=新しいリスト ans:=空白の文字列 temp:=マップここで 区切り文字以外の単語を区切り、単語配列に挿入します 文字が区切り文字である場合は単語を

  12. Pythonで葉のシーケンスが2つの葉と同じであるかどうかを確認するプログラム

    2つの二分木があるとします。両方の木の左から右への葉の順序が同じであるかどうかを確認する必要があります。 したがって、入力が次のような場合 両方のツリーのシーケンスが[2、6]であるため、出力はTrueになります。 これを解決するには、次の手順に従います。 c:=新しいリスト 関数inorder()を定義します。これが定着し、c cがnullの場合、 c:=新しいリスト rootがnullでない場合、 順序(ルートの左側、c) ルートの左側がnullで、ルートの右側がnullの場合、 cの最後にrootの値を挿入 順序(ルートの権利、c) return c

  13. Pythonですべてのタスクを完了するための最小時間を見つけるためのプログラム

    numsと呼ばれる数値のリストがあり、各値がタスクの完了にかかる時間の単位を決定しているとします。連続していないタスクはスキップできます。すべてのタスクを完了するのにかかる最小時間を見つける必要があります。 したがって、入力がnums =[11、6、8、16]の場合、最初と最後のタスクをスキップできるため、出力は14になります。 これを解決するには、次の手順に従います。 n:=numsのサイズ table:=n x 2行列を作成し、これを0で埋めます table [0、0]:=0 table [0、1]:=nums [0] 1からn-1の範囲のiの場合、do table

  14. Pythonのバイナリツリーで2番目に深いノードを見つけるプログラム

    二分木があるとしましょう。 2番目に深い葉の深さを見つける必要があります。最も深い葉が複数ある場合、2番目に深い葉ノードが次に高い葉ノードになります。私たちが知っているように、根の深さは0です。 したがって、入力が次のような場合 2番目に深いノードは3であるため、出力は1になります。 これを解決するには、次の手順に従います。 rootがnullの場合、 nullを返す ノード:=新しいリスト ノードの最後にルートを挿入 count:=0、prev:=0、now:=0 ノードが空でない間は、 new:=新しいリスト フラグ:=True ノード内のノードごとに、 フラグ

  15. Pythonでn個のアイテムを販売した後に残っているアイテムの数を見つけるプログラム

    アイテムと呼ばれる番号のリストと別の値nがあるとします。セールスマンは、ランダムなIDのバッグにアイテムを入れています。セールスマンは、バッグから最大n個のアイテムを削除できます。 n回の取り外し後、バッグ内の異なるIDの最小数を見つける必要があります。 したがって、入力がitems =[2、2、6、6] n =2の場合、ID2またはID6の2つのアイテムを販売できるため、出力は1になり、単一のターゲットを持つアイテムのみがそこに。 これを解決するには、次の手順に従います。 c:=アイテムに存在する各要素の頻度 ans:=cのサイズ freq:=c内のすべての頻度のリストを並べ替え

  16. Pythonで特定のリンクリストを昇順で並べ替えるプログラム

    リンクリストがあるとします。リストを昇順で並べ替える必要があります。 したがって、入力が[5、8、4、1、5、6、3]の場合、出力は[1、3、4、5、5、6、8、]になります。 これを解決するには、次の手順に従います。 値:=新しいリスト ヘッド:=ノード ノードがnullでない場合は、 値の最後にノードの値を挿入 node:=ノードの次 リスト値を並べ替える values:=値の要素を取得して両端キューを作成します ノード:=ヘッド ノードがnullでない場合は、 ノードの値:=キューの左側の要素とキューの左側から要素を削除 node:=ノードの次 リターンヘッド 理

  17. Pythonで行列要素をスパイラル順に印刷するプログラム

    2Dマトリックスマットがあるとします。行列要素をらせん状に印刷する必要があります。最初に最初の行(mat [0、0])から始めて、コンテンツ全体を印刷し、最後の列に続いて印刷し、最後の行というように、要素をらせん状に印刷します。 したがって、入力が次のような場合 7 10 9 2 9 1 6 2 3 9 1 4 2 7 5 9 9 11 その場合、出力は[7、10、9、1、3、4、5、11、9、9、2、9、6、2、9、2、1、7]になります。 これを

  18. Pythonの4つのリストからターゲットよりも少ない合計を生成できる一意の4つのインデックスの数を見つけるプログラム

    番号A、B、C、およびDの4つのリストがあり、別の番号ターゲットもあるとします。 A [i] + B [j] + C [k] + D[l]≤targetとなるような異なる一意のインデックスi、j、k、lの数を見つける必要があります。 したがって、入力がA =[3、2] B =[5、3] C =[1] D =[2、3] target =9の場合、次のように出力は3になります。組み合わせ:[3、3、1、2] [3、3、1、2] [2、3、1、3] これを解決するには、次の手順に従います。 temp_list:=新しいリスト 0からAのサイズの範囲のiについては、 0からBのサイズの範

  19. 与えられたブロックのリストがPythonでx=y行に対して対称であるかどうかをチェックするプログラム

    numsという番号のリストがあるとします。そして、それは正方形のブロックの高さを表しています。形状がy=xの線上で対称であるかどうかを確認する必要があります。 したがって、入力がnums =[7、5、3、2、2、1、1]のような場合、出力はTrueになります これを解決するには、次の手順に従います。 i:=0 j:=numsのサイズ-1 i <=jの場合、do h:=nums [j] i

  20. Pythonですべての部屋のロックを解除できるかどうかを確認するプログラム

    部屋と呼ばれるリストのリストがあるとします。部屋の各インデックスiは部屋を表し、rooms[i]は他の部屋を開くためのさまざまなキーを表します。部屋0は開いていて、私たちはその部屋にいて、他のすべての部屋は施錠されています。開いた部屋の間を自由に移動できます。すべての部屋を開けられるかどうかを確認する必要があります。 したがって、入力がrooms =[[2、0]、[3]、[1]、[]]のようである場合、部屋0から開始し、そのキーを使用して部屋2に進むことができるため、出力はTrueになります。 2. 2号室から1号室に行くことができます。次に、3号室の鍵を持って開きます。つまり、すべてが開か

Total 8994 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:192/450  20-コンピューター/Page Goto:1 186 187 188 189 190 191 192 193 194 195 196 197 198