-
Pythonですべての奇数長のサブ配列の合計を見つけるプログラム
numsと呼ばれる正の値の配列があるとすると、考えられるすべての奇数長のサブ配列の合計を見つける必要があります。私たちが知っているように、サブ配列は配列の連続したサブシーケンスです。 numsのすべての奇数長のサブ配列の合計を見つける必要があります。 したがって、入力がnums =[3,8,2,5,7]のような場合、出力は次のようになります。奇数の長さのサブ配列は- nums[0] = 3 nums[1] = 8 nums[2] = 2 nums[3] = 5 nums[4] = 7 nums[0..2], so sum = 13 nums[1..3], so sum = 15 nums[2
-
Pythonで単語間のスペースを再配置するプログラム
いくつかのスペースの間に配置されたいくつかの単語を含む文字列sがあるとします。各単語は、少なくとも1つのスペースで区切られます。隣接する単語のすべてのペアの間に同じ数のスペースがあり、各単語間のスペースの数が最大になるように、スペースを再配置する必要があります。すべてのスペースを均等に再配分できない場合は、最後に余分なスペースを配置できます。 したがって、入力がs =I love Programmingの場合、出力は I love Programmingになります。スペースが分散されていることを確認してください。単語間には、5つのスペースがあります。 これを解決するには、次の手順に従います
-
Pythonでフォルダからホームに戻るために必要な最小限のジャンプを見つけるためのプログラム
フォルダに入力するパスがあるログがあるとすると、-のような異なる記号が存在する可能性があります。 ../:現在のフォルダから親フォルダに移動します。 (メインフォルダにいる場合は、場所を変更しないでください。) ./:現在のフォルダに残ります。 x /:xという名前の子フォルダーに移動します。 ログから、停止した最後のフォルダーからメインフォルダーに戻るために必要な操作の最小数を見つける必要があります。 したがって、入力がlogs =[Dir1 /、 Dir2 /、 ../、 Dir2 /、 Dir3 /、 ./]の場合、出力は3 画像から、家に着くには3回
-
Pythonで駐車システムを設計するプログラム
駐車システムを設計するとします。駐車場には、大、中、小の3種類の駐車スペースがあります。また、サイズごとに固定数のスロットがあります。 2つのメソッドを使用してOurParkingSystemというクラスを作成します- コンストラクター(大、中、小) −このコンストラクターは、さまざまなスペースで使用可能なスロットの数を取得し、OurParkingSystemクラスのオブジェクトを初期化します。 addCar(carType) −このメソッドは、駐車場内に配置したい車に対して、指定されたcarTypeの駐車スペースがあるかどうかをチェックします。 大、中、小の3つのスロット
-
PythonでX以上のX要素を持つ特別な配列のXを見つけるプログラム
すべての要素が0または正のnumsという配列があるとします。 numsにx以上のx個の数値が正確に存在するような数値xが存在する場合、numsは特殊な配列と見なされます。また、xはnumsの要素である必要はありません。ここで、配列が特殊な場合はxを検索する必要があります。それ以外の場合は、-1を返します。 したがって、入力がnums =[4,6,7,7,1,0]のような場合、4以上の数値が4つあるため、出力は4になります。 これを解決するには、次の手順に従います- 0から最大数までの範囲のiについては、次のようにします count:=0 numsのjごとに、実行します
-
Pythonでいくつかの要素を削除した後、配列の平均を見つけるプログラム
numsという配列があるとすると、要素の最小の5%と最大の5%を削除した後、残りの値の平均を見つける必要があります。 したがって、入力がnums =[2,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,8]のようである場合、 、その場合、出力は4.0になります。これは、最小値と最大値を削除した後、すべてが同じであり、中央値がであるためです。 これを解決するには、次の手順に従います- リスト番号を並べ替える n:=numsのサイズ per:=(n * 5/100)の商 l2:=インデックスごとのnumsのサブ配列(numsのサイズ-per-1)
-
Pythonで2つの等しい文字の間の最大の部分文字列を見つけるプログラム
文字列sがあるとすると、2つの文字を除いて、2つの等しい文字または要素の間の最長の部分文字列の長さを見つける必要があります。そのような部分文字列が見つからない場合は、-1を返します。 したがって、入力がs =levelのような場合、最適なサブストリングはlevまたはvelのいずれかであるため、出力は3になります。 これを解決するには、次の手順に従います- メモ:=新しい地図 0からs-1のサイズのiの場合、実行します s [i]がメモにある場合、 メモの最後にiを挿入[s[i]] それ以外の場合 memo [s [i]]:=1つの要素のみを含むリスト
-
Pythonで要素の頻度を増やして配列を並べ替えるプログラム
要素が複数回出現する可能性のあるいくつかの要素を含む配列があるとします。要素が頻度の増加に従ってソートされるように配列をソートする必要があります。したがって、どの要素が表示される回数が少ないかが最初に表示されます。 したがって、入力がnums =[1,5,3,1,3,1,2,5]のような場合、出力は[2、5、5、3、3、1、1、1] これを解決するには、次の手順に従います- mp:=新しいマップ numsからの個別の要素iごとに、実行します x:=numsで存在するiの数 xがmpに存在する場合、 mp [x]の最後にiを挿入します それ以外の場合、
-
Pythonで断片から配列を形成できるかどうかをチェックするプログラム
すべての要素が一意であり、piecesと呼ばれる異なる小さな配列を持つ別の配列を持つ配列numがあるとします。配列を任意の順序で連結してメイン配列の数を取得できるかどうかを確認する必要があります。ただし、各配列部分に存在する要素を並べ替えることは許可されていません[i]。 したがって、入力がnums =[5,1,12,36,2,47,6] piece =[[2,47,6]、[12,36]、[1]、[5]]のようである場合、次に、[[5]、[1]、[12,36]、[2,47,6]]の順序で連結してメイン配列を取得できるため、出力はTrueになります。 これを解決するには、次の手順に従います-
-
Pythonで生成された配列の最大値を見つけるプログラム
数nがあるとします。次の方法で長さn+1の配列Aを生成する必要があります- A [0] =0 A [1] =1 A [2 * i] =A [i] if 2 <=2 * i <=n A [2 * i + 1] =A [i] + A [i + 1] if 2 <=2 * i + 1 <=n 最後に、配列numsで最大数を見つける必要があります。 したがって、入力がn =5の場合、出力は3になります。 A [0] =0 A [1] =1 A [2] =A [1] =1 A [3] =A [1] + A [2] =1 + 1 =2
-
Pythonで爆弾を解読するためのコードを復号化するプログラム
あなたが解散しようとしている爆弾があり、あなたの時間がなくなっているとしましょう!長さnの循環配列コードがあり、キーkがあります。コードを復号化するには、すべての番号を置き換える必要があります。すべての番号が同時に置き換えられます。いくつかのルールがあります- 0の場合、i番目の数値を次のk個の数値の合計に置き換えます。 k <0の場合、i番目の数値を前のk個の数値の合計に置き換えます。 k =0の場合、i番目の数値を0に置き換えます。 ここで、コードは循環しているため、code[n-1]の次の要素はcode[0]であり、code[0]の前の要素はcode[n-1]です
-
Pythonで2つの文字列配列が同等かどうかをチェックするプログラム
2つの文字列型配列word1とword2があるとすると、2つの配列が同じ文字列を表すかどうかを確認する必要があります。文字列は、その配列内の要素が文字列を形成する順序で連結されている場合、その配列で表すことができると言えます。 したがって、入力がword1 =[ko、 lka、 ta] word2 =[k、 olk、 at、 a]の場合、出力は両方としてTrueになります。 「コルカタ」を形成しています。 これを解決するには、次の手順に従います- s1:=空白の文字列、s2:=空白の文字列 word1の文字列iごとに、実行 s1:=s1連結i word2の文字列
-
Pythonのシーケンスから最大のk-repeatingサブストリングを見つけるプログラム
sと呼ばれる文字のシーケンスがあると仮定します。wがk回連結されている場合、文字列wはkを繰り返す文字列であり、シーケンスのサブ文字列です。 wの最大k繰り返し値は、最大値kになります。ここで、wは順番にk繰り返しです。また、wが指定されたシーケンスの部分文字列でない場合、wの最大k繰り返し値は0です。したがって、sとwがある場合、wの最大k繰り返し値を順番に見つける必要があります。 したがって、入力がs =papaya w =paの場合、w =paはpapayaに2回存在するため、出力は2になります。 これを解決するには、次の手順に従います- カウント:=sに存在するwの数
-
Pythonで最も裕福な顧客を見つけるためのプログラム
accountと呼ばれる注文mxnの行列があるとします。ここで、accounts [i] [j]は、j番目の銀行に存在するi番目の顧客の金額です。私たちは最も裕福な顧客が持っている富を見つけなければなりません。顧客は、すべての銀行を考慮して最大額を持っているときに最も裕福になります。 したがって、入力が次のような場合 10 20 15 30 5 20 10 5 12 15 12 3 次に、2人目のお金が30 + 5 + 20 =55であるため、出力は55になります。これは最大です。 これを解決するには、次の手順に従い
-
グループ内のすべての友達を収容できるバスのサイズを調べるPythonプログラム
大学のバスで大学から自宅に戻るのを待っている学生グループがn人いるとします。各学生グループには、m人の学生がいます。学生グループは、離れることなくバスで旅行したいと考えています。彼らは、グループのすべてのメンバーがバスに乗れる場合に限り、バスに乗ります。また、前のグループがバスに乗車していないか、すでに目的地に到着している場合、グループはバスに乗車しません。グループの数と各グループの学生の数が与えられた場合、バスがすべてのグループを輸送できるようにバスのサイズを調べる必要があり、バスが大学から出発するたびに空きスペースはありませんバスの中で。 したがって、入力がグループのようなものであるか、
-
(base、number)のペアを含む配列内の一致の数を見つけるPythonプログラム
(x、y)の形式でいくつかの異なるペアが与えられたとします。ここで、xは数値の底を示し、yは数値自体を示します。リストには、同じ意味のペアがあります。指定された数のペアの一致数を確認する必要があります。指定されたペアは冗長である可能性があり、無効なベース番号の組み合わせを含む可能性もあります。 したがって、入力がnum_inputs =2、input_arr =[(10、15)、(8、17)]のような場合、出力は1になります。 変数num_inputsは入力の数を指定し、配列input_arrは数のペアをリストします。ここで、2つのペアを見ると、基数10(10進数)の15は、基数8(8進数
-
数日後に製品の価格を調べるPythonプログラム
ある人が価格xの製品を購入したいとします。しかし、日を追うごとに、製品の価格は前日の価格のx倍になります。その人が製品を購入することを決心してから、y日後に製品の価格を知る必要があります。製品の価格が高すぎる場合、答えは10 ^ 9+7を法とする価格として与えられます。入力はペアのリストで与えられます。ペアの最初の値は初期価格xで、2番目の値はyで、経過した日数です。 したがって、入力がnums =[(5、2)、(6、8)、(2、12)、(2722764242812953792238894584、3486705296791319646759756475)、(15054497421647127
-
コンテナにいくつかの金属棒を詰める操作の数を見つけるPythonプログラム
異なるサイズのいくつかの金属棒を輸送するタスクが与えられたとします。ただし、輸送コンテナの長さは短く、長さ1のバーのみを含めることができます。 n個のバーが提供され、それらの長さはリストで示されます。したがって、すべてのバーをコンテナに収めます。単位サイズになるように、すべてのバーをカットして分割する必要があります。さらに、1回の操作ですべてのバーをコンテナに収めることができます。バーで実行する必要のある操作の数を見つける必要があります。 したがって、入力がinput_arr =[6、3、7]のようである場合、出力は22になります。 サイズ6のバーをサイズ1のバーにするには、10
-
ボールが円管内で衝突する回数を調べるPythonプログラム
円管にn個のボールがあるとします。チューブの長さは100メートルで、最初は、チューブ内の各ボールは、開始点と呼ばれる点から1メートル離れています。これで、ボールはチューブ内をさまざまな方向に循環して移動し始めます。ボールはチューブ内を毎秒0.1メートル移動します。 2つのボールが一点で出会うと、衝突が発生し、ボールの進行方向が変わります。このプロセスが長時間続く場合は、10 ^ 9+6秒としましょう。ボールが衝突した回数を調べる必要があります。開始点からのボールの初期距離が入力として与えられます。 したがって、入力がinput_array =[0、10]のような場合、出力は400000になり
-
カットされたキューブの数を調べるPythonプログラム
次元a、b、およびcのいくつかの立方体があり、それらを使用して、次元axbxcの新しいボックスが作成されたとします。 a、b、およびcは互いに素です。 gcd(a、b)=gcd(b、c)=gcd(c、d)=1.図に示すように、ボックスを1つのスライスで2つに切断する必要があります。箱がこのようにカットされているかどうか、いくつの立方体が2つのピースにカットされているかを確認する必要があります。可能な3次元を含む配列が提供されており、そこから答えを見つける必要があります。 カットは、頂点P、Q、およびRを通過する平面になるようにこのように行われます。 したがって、入力がn =3、inp