-
超直方体セルの値の合計を見つけるPythonプログラム
超直方体は、k次元の長方形です。各次元の長さは、n1、n2、n3、.....、nmで表すことができます。超直方体のセルは(p、q、r、...)としてアドレス指定され、(p、q、r、...)のgcdと同等の値が含まれています。ここで、1 <=p <=n1、1 <=q<=n1などです。私たちのタスクは、すべてのセル値gcd(p、q、r、...)の合計を決定することです。結果はモジュロ10^9+7として返されます。インデックス付けは1からnまで行われます。 したがって、入力がinput_arr =[[2、2]、[5、5]]のようである場合、出力は[5、37]になります。 入力として与えられた2つ
-
賞品を隠すことができる部屋の数を見つけるためのPythonプログラム
ゲーム番組で、2n個の部屋が円形に配置されているとします。ある部屋には、参加者が集めなければならない賞品があります。部屋には、1、2、3、....、n、-n、-(n-1)、....、-1の番号が付けられています。時計回りに。各部屋にはドアがあり、そのドアによって、異なる部屋を訪れることができます。すべてのドアにはxのマークが付いています。これは、別の部屋が現在の部屋からxの距離にあることを意味します。 xの値が正の場合、ドアはx番目の部屋から時計回りにその部屋に向かって開きます。 xの値が負の場合、部屋は反時計回りにx番目の部屋に開いていることを意味します。賞品を保管できる部屋の数を確認する必
-
与えられた特別な行列の行列式を見つけるためのPythonプログラム
n個の頂点を持つツリーがあり、各頂点に1からnまでのラベルが付けられているとします。ツリーのルートにはラベル1があり、各頂点の重みはwiです。ここで、nxn行列Aが形成されます。ここで、A(x、y)=Wf(x、y)ここで、f(x、y)は頂点xおよびyの最も一般的でない先行です。行列Aの行列式を見つける必要があります。行列のエッジ、重み、および頂点の総数が入力として提供されます。 したがって、入力がinput_array =[[1、2]、[1、3]、[1、4]、[1、5]]のようである場合、重み=[1、2、3、4、5]、頂点=5の場合、出力は24になります。 行列Aは次のように与えられます=
-
与えられた値より大きいセットの数を見つけるためのPythonプログラム
いくつかの整数を含む配列があるとします。与えられた数の配列からすべての隣接するサブ配列を見つけて、それを別のリストに入れます。ここで、各サブアレイをそのサブアレイ内の最大要素に置き換えます。与えられた数kもあり、与えられた数よりも多くなっているサブアレイの数を調べる必要があります。 したがって、入力がinput_array =[5、6、7、8]、k =7の場合、出力は4になります。 指定された入力配列の連続するサブ配列は、{5}、{6}、{7}、{8}、{5、6}、{6、7}、{7、8}、{5、6、7 }、{6、7、8}、{5、6、7、8} 最大要素を含むサブアレイを更新すると、サブア
-
Pythonでゴールパーサー解釈コマンドを見つけるプログラム
特定の文字列コマンドを解釈できるゴールパーサーがあるとします。コマンドはで構成されます アルファベット「G」、 開き括弧「()」 および/または「(al)」の順序。 ゴールパーサーは、「G」を文字列「G」、「()」を「o」、「(al)」を文字列「al」として解釈します。最後に解釈された文字列は、元の順序で連結されます。したがって、文字列コマンドがある場合は、ゴールパーサーによるコマンドの解釈を見つける必要があります。 したがって、入力がcommand =G()()()(al)(al)のような場合、出力はGoooalalになります。 これを解決するには、次の手順に従い
-
Pythonで一貫性のある文字列の数をカウントするプログラム
個別の文字で構成される文字列があり、単語と呼ばれる文字列の配列もあるとします。文字列内のすべての文字が文字列sに表示される場合、文字列は一貫しています。配列ワードに存在する一貫性のある文字列の数を見つける必要があります。 したがって、入力がs =px、words =[ad、 xp、 pppx、 xpp、 apxpa]の場合、文字列が3つしかないため、出力は3になります。 pおよびx、[xp、 pppx、xpp]。 これを解決するには、次の手順に従います- カウント:=0 0から単語のサイズまでの範囲のiの場合-1、実行 0から単語のサイズまでの範囲のjの場合[i]-1、
-
Pythonのトーナメントでプレイされた試合の数をカウントするプログラム
数nがあるとします。したがって、トーナメントにはいくつかのルールがあるチームがn個あります- チームの数が現在でもある場合、各チームは別のチームとマージされます。そして、合計(n / 2)の試合が行われ、そのうち(n / 2)の勝者チームが次のラウンドに進みます。 チームの数が奇数の場合、1つのチームがトーナメントでランダムに移動し、残りのチームがマージされます。したがって、合計(n-1)/ 2試合が行われ、(n-1)/ 2+1チームが勝者として次のラウンドに移動します。 最終的な勝者を獲得するには、プレイされた試合の総数を見つける必要があります。 したがって、入力がn =
-
Pythonで再フォーマットされた電話番号を見つけるプログラム
文字列として電話番号があるとします。電話番号は、数字、スペース、ダッシュ「-」で構成されます。電話番号を一定の方法で再フォーマットしたい。いくつかのルールがあります- 最初にすべてのスペースとダッシュを削除します 残りの桁数が4以下になるまで、左側から右側の桁を長さ3のブロックにグループ化します。 最後の数字は、-のようにグループ化されます。 2桁の場合:長さ2の単一ブロック。 3桁の場合:長さ3の単一ブロック。 4桁の場合:それぞれ長さ2のブロックがさらに2つあります。 次に、これらのブロックはダッシュでクラブされます。再フォーマットされた電話番
-
文字列の半分がPythonで類似しているかどうかを確認するプログラム
長さが偶数の文字列sがあるとします。この文字列を同じ長さの2つの異なる半分に分割する必要があります。したがって、「a」が前半で、「b」が後半であると考えてください。母音の数が同じ(大文字または小文字)の場合、2つの文字列は類似していると言います。 「a」と「b」が似ているかどうかを確認する必要があります。 したがって、入力がs =talentの場合、2つの半分がtalとentであるため、出力はTrueになります。母音が1つと子音が2つしかないため、出力は同じです。 これを解決するには、次の手順に従います- a:=sの左半分 b:=sの右半分 count1:=0、count
-
Pythonでトラックに乗せることができる最大ユニットを見つけるためのプログラム
boxTypesと呼ばれる2D配列として表されるボックスのセットがあるとします。ここで、boxTypes [i]には2つの要素[タイプiのボックスの数、タイプiのボックスあたりのユニット数]が含まれます。ここで、別の値kもあります。これは、そのトラックに置くことができるボックスの最大数です。ボックスの数がkを超えない限り、トラックに配置するボックスを選択できます。トラックに乗せることができるユニットの最大総数を見つける必要があります。 したがって、入力がboxTypes =[[2,4]、[3,3]、[4,2]]、k =6のような場合、出力は19になります。これは、 タイプ1の2つのボッ
-
Pythonで銀行にある合計金額を見つけるプログラム
月曜日と言う初日に銀行に1Rを置いたとします。そして、火曜日から日曜日までの毎日、前日より1R多く入れます。そして、その後の毎週月曜日には、前の月曜日よりも1R多く入れます。数字がnの場合、n日目の終わりに銀行にある合計金額を見つける必要があります。 したがって、入力がn =17の場合、出力は75になります。これは、月曜日に1R、火曜日に2Rなど、日曜日に7R、次の月曜日に2R、第2火曜日に3Rを入力するためです。日曜日に8Rを置きます。次に、第3月曜日に3Rを入れ、火曜日に4Rを入れ、水曜日(最終日)に5Rを入れます。したがって、合計は(1 + 2 + 3 + 4 + 5 + 6 + 7)
-
PythonでデコードされたXOR配列を回復するプログラム
n個の非負の整数を持つ隠し配列arrがあるとします。これで、この配列は長さn-1の別の配列encにエンコードされます。したがって、ここではenc [i] =arr [i] XOR arr [i+1]です。エンコードされたenc配列と最初の整数、つまり実際の配列の最初の要素がある場合は、元の配列を見つける必要があります。 したがって、入力がenc =[8,3,2,7]、first =4の場合、出力は[4、12、15、13、10]になります。 これを解決するには、次の手順に従います- arr:=1つの要素のみが最初にある配列 0からenc-1のサイズまでの範囲のiの場合、実行します
-
Pythonで最大の正方形を形成できる長方形の数を見つけるためのプログラム
rectという配列があります。rect[i]には2つの要素[len_i、wid_i]があり、len_iとwid_iはそれぞれi番目の長方形の長さと幅を表しています。これで、k<=lenn_iとk<=wid_iの両方の場合、i番目の長方形を切り取って辺の長さがkの正方形を形成できます。したがって、たとえば、長方形[4,6]がある場合、それを切り取って、辺の長さが最大4の正方形を取得できます。ここで、maxLenというパラメーターを、取得できる最大の正方形の辺の長さと考えます。与えられた長方形のいずれかから。一辺の長さがmaxLenの正方形を作成できる長方形の数を見つける必要があります。 したが
-
Pythonでポイントの最高高度を見つけるプログラム
ロードトリップに行くバイカーがいるとします。さまざまな高度での彼のロードトリップには、n個の異なるポイントがあります。バイカーは、高度0でポイント0から旅行を開始します。n個の要素を持つゲインと呼ばれるシーケンスがある場合、gain [i]は、すべてのポイントiとi + 1の間の高度の正味ゲインです(0 <=i
-
Pythonで非表示の数字を置き換えることにより、最新の有効時間を見つけるプログラム
文字列sがhh:mmの形式で時間を表すと仮定します。 sの一部の数字は非表示になっています(?で表されます)。 24時間制を考慮すると、有効な時刻は00:00から23:59の間です。非表示の数字を置き換えることにより、時間から取得できる最新の有効時間を見つける必要があります。 したがって、入力がs =1?:?5の場合、数字「2」で始まる最新の時間は23で、数字「0」で終わる最後の分は13:55であるため、出力は13:55になります。 50。 これを解決するには、次の手順に従います- ans:=新しいリスト max_time:=[2、 3、:、 5、 9] max_tim
-
Pythonを使用してボックス内のボールの最大数を見つけるプログラム
lからrまでの番号が付けられたn個のボール(両方を含む)があり、1から無限までの番号が付けられたボックスの数が無限であるボールファクトリーがあるとします。したがって、ボールの番号の桁の合計と同じ番号のボックスに各ボールを入れると、 (例として、ボール番号123はボックス番号1 + 2 + 3 =6に入れられます)。したがって、2つの値lとrがある場合、ボールが最も多いボックス内のボールの数を見つける必要があります。 したがって、入力がl =15 r =25のような場合、出力は2になります。 ボール番号15は1+5=6の中に入れられます ボール番号16は1+6=7の中に入れられます
-
Pythonで一意の要素の合計を見つけるプログラム
重複する要素がほとんどなく、固有の要素がいくつかある配列numがあるとします。 numsに存在するすべての一意の要素の合計を見つける必要があります。 したがって、入力がnums =[5,2,1,5,3,1,3,8]の場合、一意の要素のみが8と2であるため、出力は10になり、それらの合計は10になります。 これを解決するには、次の手順に従います- count:=すべての一意の要素とその頻度を保持する辞書 ans:=0 インデックスiと値v(nums)ごとに、実行します count [v]が1と同じ場合、 ans:=ans + v ansを返す
-
配列がPythonでソートおよびローテーションされているかどうかを確認するプログラム
numsという配列があるとすると、配列が元々降順ではない順序で並べ替えられてから、いくつかの位置(ゼロの場合もある)を回転したかどうかを確認する必要があります。重複がアレイに存在する場合もあります。 したがって、入力がnums =[12,15,2,5,6,9]のようである場合、出力は2桁右に回転されるため、Trueになります。 これを解決するには、次の手順に従います- j:=0 j
-
Pythonでバイナリ文字列を交互に使用するために必要な最小限の変更を見つけるプログラム
バイナリ文字列sがあるとします。 1ビット反転できる操作を考えてみましょう。隣接する2つの文字が同じでない場合、文字列sは交互文字列と呼ばれます。を交互にするために必要な最小数の操作を見つける必要があります。 したがって、入力がs =11100011の場合、出力は3になります。これは、位置1、4、および7でビットを反転すると、 10101010になり、すべてが交互になるためです。 これを解決するには、次の手順に従います- 変更:=0 even_1:=0、even_0:=0 odd_1:=0、odd_0:=0 0からs-1のサイズのiの場合、実行します 私
-
Pythonでn-aryツリーのコピーを作成するプログラム
ルートが「ルート」に与えられているn-aryツリーが提供されたとします。完全なn-aryバイナリツリーのコピーを作成し、両方のツリーのプレオーダートラバーサルを実行する必要があります。コピーしたツリーは、別のルートノードを使用して保存する必要があります。ツリーのノード構造を以下に示します- Node: value : <integer> children : <array> したがって、入力が次のような場合 、出力はになります [14, 27, 32, 42, 56, 65] 入力ツリーと出力ツリーのプレオ