Python

 Computer >> コンピューター >  >> プログラミング >> Python
  1. ボードがPythonで有効なNクイーンソリューションであるかどうかを確認するプログラム

    チェス盤を表すnxn行列があるとします。 1と0がいくつかあります。ここで、1はクイーンを表し、0は空のセルを表します。ボードがN-Queenパズルの有効な解決策であるかどうかを確認する必要があります。私たちが知っているように、ボードは、2人のクイーンが互いに攻撃していない有効なNクイーンソリューションのソリューションです。 したがって、入力が次のような場合 その場合、出力はTrueになります これを解決するには、次の手順に従います。 n:=行列の行数 rows:=新しいセット、cols:=新しいセット、diags:=新しいセット、rev_diags:=新しいセット 0から

  2. Pythonで電話のキーパッドを使用して入力されたすべての可能な文字列を検索するプログラム

    2〜9の数字を含む文字列があるとします。数字が生成する可能性のあるすべての文字の組み合わせを見つける必要があります。数字から文字への1つのマッピング(電話ボタンの場合と同様)を以下に示します。 1は一部の文字をマップしますが、文字はマップしないことに注意してください。 1 2 a b c 3 d e f 4 g h i 5 j k l 6 m n o 7 p q r s 8 t u v 9 w x y z * 0 # たとえば、指定された文字列が「49」の場合、可能な文字列は[gw、

  3. Pythonで利益を上げるために待つ最小日数を見つけるプログラム

    会社の毎日の株式市場価格を時系列で表す価格のリストがあるとします。インデックスiの値が、利益を上げるまで待たなければならない最小日数となる同じ長さのリストを見つける必要があります。利益を上げるそのような方法がない場合、値は0である必要があります。 したがって、入力がprices =[4、3、5、9、7、6]のような場合、出力は[2、1、1、0、0、0]になります。 これを解決するには、次の手順に従います。 ans:=価格と同じサイズのリストで、0を入力します q:=新しいリスト 価格の各インデックスiと価格pについて、 qの最後の項目の2番目の値である場合、 j:=qの最後の要素

  4. Pythonで指定された時間の同じ数字を再利用して最も近い時間を見つけるプログラム

    「hh:mm」形式の24時間の文字列があるとすると、指定された数字を再利用することで形成できる次に近い時刻を見つける必要があります。指定された文字列の数字を何度でも再利用できます。 したがって、入力がs =03:15の場合、出力は03:30になります。これは、指定された数字を繰り返す最も近い時刻03:30です。 これを解決するには、次の手順に従います。 use:=2桁の時と2桁の最小値のリスト 可能:=新しいセット 関数backtrack()を定義します。これは道をたどります パスのサイズが4と同じ場合、 (path[最初の2桁]concatenate : concatenate pa

  5. 単語の連結の数を数えるプログラムは、Pythonのリストにあります

    文字列のリストがあるとします。リスト内で他の単語を連結した単語の数を見つける必要があります。連結時に単語を再利用したり、何度でも連結したりできます。 したがって、入力がwords =[hello、 world、 helloworld、 famous、 worldfamous、 programming]の場合、helloworldはの連結であるため、出力は2になります。こんにちは」と「世界」。 「worldfamous」は「world」と「famous」を連結したものです。 これを解決するには、次の手順に従います。 トライ:=新しい地図 単語内の各単語について、 layer:=trie

  6. Pythonで指定された文字から形成できる最長の単語の長さを見つけるプログラム

    単語のリストと文字と呼ばれる文字列があるとすると、指定された文字を並べ替えることで作成できる最長の単語のサイズを見つける必要があります。文字にはアスタリスク文字(*)が含まれている場合があり、任意の文字と一致する可能性があります。また、すべての文字を使用する必要はありません。 したがって、入力がwords =[prince、 rice、 price、 limit、 hello] Letters =* r ** ce *の場合、出力は6になります。私たちが作ることができる最長の単語は「王子」です。長さは6です。 これを解決するには、次の手順に従います。 has:=文字と文字の各要素の頻度

  7. Pythonで二分木の最長交互パスの長さを見つけるプログラム

    二分木があるとすると、左と右の子を交互に繰り返して下る最長のパスを見つける必要があります。 したがって、入力が次のような場合 交互のパスが[2、4、5、7、8]であるため、出力は5になります。 これを解決するには、次の手順に従います。 rootがnullの場合、 0を返す 関数dfs()を定義します。これには、ノード、カウント、フラグが必要です ノードがnullでない場合、 フラグがTrueと同じ場合、 a:=dfs(ノードの左側、カウント+ 1、False) b:=dfs(ノードの右側、1、True) それ以外の場合、フラグがFalseと同じ場合、 a:=dfs

  8. Pythonで文字列を行数kのジグザグ文字列に変換するプログラム

    文字列sと別の値kがあるとします。各文字をsから取得し、左上から右下に向かってk番目の行に到達するまで斜めに開始し、次に右上に移動して、新しい文字列を見つける必要があります。 したがって、入力がs =ilovepythonprogramming k =5のような場合、出力はになります。 これを解決するには、次の手順に従います。 line:=新しい地図 cnt:=0 デルタ:=1 sの各インデックスiと文字cについて、 行末に(c、i)を挿入[cnt] cnt:=cnt + delta cntがkと同じ場合、 デルタ:=-1 cnt:=k-2 cntが

  9. Pythonですべての出荷を完了するための総コストを見つけるためのプログラム

    ポートと呼ばれるリストのリストがあるとします。ここで、ports[i]はポートiが接続されているポートのリストを表します。また、出荷と呼ばれるリストの別のリストがあります。ここで、シーケンス[i、j]の各リストは、ポートiからポートjへの出荷要求があることを示します。また、ポートiからポートjに出荷するコストは、2つのポートからの最短経路の長さであるため、すべての出荷を完了するために必要な合計コストを見つける必要があります。 4からです。 これを解決するために、次の手順に従います- n:=ポートのサイズ dist:=ポートリストからの隣接行列 0からnの範囲のjについては、

  10. Pythonでターゲットを保持している最短のサイクル長を見つけるプログラム

    有向グラフの隣接リストがあるとします。ここで、インデックスiの各リストは、ノードiからの接続されたノードで表されます。目標値もあります。ターゲットを含む最短サイクルの長さを見つける必要があります。解決策がない場合は-1を返します。 したがって、入力が次のような場合 0があることに注意してください。ただし、これは最短ではありません。 これを解決するには、次の手順に従います- 訪問:=新しいセット l:=要素ターゲットのリスト。 長さ:=0 lが空ではない場合は、 長さ:=長さ+ 1 nl:=新しいリスト lの各uについて、 グラフ[u]の各vについて、 vがターゲット

  11. Pythonでk日以内にスカイダイバーに必要な最小スペースプレーンを見つけるプログラム

    numsと呼ばれる数値のリストがあり、各値は一緒にスカイダイビングをしようとしている人々のグループを表しているとします。また、スカイダイビングに適用できる日数を表す別の値kがあります。 k日以内にすべての要求を満たすことができるようにするために必要な飛行機の最小容量を見つける必要があります。リクエストは指定された順序で実行する必要があり、飛行機は1日1回しか飛行できません。 したがって、入力がnums =[16、12、18、11、13]、k =3の場合、28人の飛行機が[16、12]、[で指定された要求をグループ化できるため、出力は28になります。 18]、[11、13]。 これを解決する

  12. Pythonで衝突した後のロケットの最終状態を見つけるプログラム

    numsと呼ばれる数値のリストがあり、それがロケットのサイズと方向を表しているとします。正の整数は右を示し、負の数は左を示します。そして、その数の絶対値はロケットのサイズを表しています。これで、2つのロケットが衝突すると、小さい方のロケットは破壊され、大きい方のロケットはそのまま旅を続けます。同じサイズのロケットで衝突すると、両方とも破壊されます。 2つのロケットが同じ方向に移動しているとき、それらは決して衝突しません(ロケットの速度が同じであると仮定します)。すべての衝突後のロケットの状態を見つける必要があります。 したがって、入力がnums =[3、8、5、-5]の場合、出力は[3、8]

  13. Pythonで1の正方形の部分行列の数を見つけるプログラム

    2Dバイナリ行列があるとすると、1がすべてある正方形の部分行列の総数を見つける必要があります。 したがって、入力が次のような場合 1 1 1 0 1 1 1 0 1 1 1 0 0 0 0 0 1 0 1 1 12(1 x 1)の正方形、4(2 x 2)の正方形、1(3 x 3)の正方形があるため、出力は17になります。 これを解決するには、次の手順に従います- res:=0 行列の行数が0から行数の範囲のiについては、 0から行列の

  14. 与えられたプッシュポップシーケンスがPythonで適切かどうかをチェックするプログラム

    プッシュと呼ばれる番号のリストとポップと呼ばれる番号の別のリストがあるとすると、これがスタックプッシュとポップアクションの有効なシーケンスであるかどうかを確認する必要があります。 したがって、入力がpushs =[1、2、5、7、9] pops =[2、1、9、7、5]のようである場合、[1、2]をプッシュできるため、出力はTrueになります。まず、両方をポップします。次に、[5、7、9]を押して、すべてポップします。 これを解決するには、次の手順に従います- s:=新しいスタック i:=0 プッシュの各要素について、 eleをsにプッシュ 0およびpops[i]のサイズはsの同じ

  15. Pythonで車の速度が一定である最長のサブリストのサイズを見つけるプログラム

    等間隔の時間間隔での車の位置を表す数字のリストがあるとします。車が一定の速度で走行していた最長のサブリストのサイズを見つける必要があります。 したがって、入力がpositions =[0、4、8、12、6、4、0]のようである場合、サブリストは[0、4、8、12]であるため、出力は4になります。 これを解決するには、次の手順に従います- j:=1 max_cnt:=0、現在:=0 距離:=|位置[0]-位置[1]| j <位置のサイズ、do 前:=位置[j-1] 距離が|positions[j]--prev|と同じ場合、次に 現在:=現在+1 それ以外の場合、 m

  16. Pythonでn桁のステップ数をカウントするプログラム

    数nがあるとすると、n桁のステッピング数を見つける必要があります。隣接するすべての桁の絶対差が1の場合、数値はステッピング番号と呼ばれます。したがって、数値が123の場合、これはステッピング番号ですが、124はそうではありません。答えが非常に大きい場合は、結果mod 10 ^ 9+7を返します。 したがって、入力がn =2の場合、ステップ数は[12、23、34、45、56、67、78、89、98、87、76、65、54、 43、32、21、10] これを解決するには、次の手順に従います- m:=10 ^ 9 + 7 nが0と同じ場合、 0を返す nが1と同じ場合、 10を返

  17. Pythonの単語と文字数のリストから生成できる文字列の最大数をカウントするプログラム

    各文字列に2文字の「A」と「B」が含まれている文字列のリストがあるとします。 aとbの2つの値があります。形成できるストリングの最大数を見つける必要があります。再利用せずに、最大で最大b個の「A」と最大b個の「B」を使用できます。 したがって、入力がstrings =[AAABB、 AABB、 AA、 BB] a =4 b =2の場合、4 Aを使用して文字列を取得できるため、出力は2になります。 sと2つのBs [AABB 、AA]。 これを解決するには、次の手順に従います- ペア:=新しいリスト 文字列の各wについて、 A:=wの「A」の数 B:=wのサイズ-A ペアの最後にペア(

  18. 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

  19. 連結がPythonのターゲットと同じサブシーケンスの最小数を見つけるプログラム

    sourceとtargetの2つの文字列があるとすると、それらを連結した場合にtargetと同じになるように、作成できるsourceのサブシーケンスの最小数を見つける必要があります。そのような結果がない場合は、-1を返します。 したがって、入力がsource =xyz target =xyzyzzのようである場合、これらの[xyz + yz + z] を連結できるため、出力は3になります。 これを解決するには、次の手順に従います- s_size:=sのサイズ、t_size:=tのサイズ concat_count:=0、target_idx:=0 target_idx

  20. Pythonの単語リスト内に存在するサブシーケンスの数を見つけるプログラム

    単語のリストと文字列sがあるとすると、単語リスト内でsのサブシーケンスである文字列の数を見つける必要があります。 したがって、入力がwords =[xz、 xw、 y] s =xyzの場合、xzとyはxyzのサブシーケンスであるため、出力は2になります。 これを解決するには、次の手順に従います- ans:=0 d:=空の地図 単語内の各単語について、 d [word [0]]の最後に単語を挿入します sの各cについて、 l:=d [c] d [c]:=新しいリスト lの各単語について、 単語のサイズが1の場合、 ans:=ans + 1 それ以外の場合、

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