-
Pythonで配列をソートするために必要なスワップの数を見つけるためのプログラム
numsという配列があり、numsを昇順または降順の任意の順序で並べ替えるのに必要なスワップの数を見つける必要があるとします。 したがって、入力がnums =[2、5、6、3、4]のような場合、最初はnumsが[2、5、6、3、4]であるため、出力は2になります。番号6と4を入れ替えると、配列は[2,5,4,3,6]になります。次に、番号5と3を入れ替えると、配列は[2,3,4,5,6]になります。したがって、配列を昇順でソートするには2つのスワップが必要です。 これを解決するには、次の手順に従います- 関数swap_count()を定義します。これにはinput_arrが必要です p
-
Pythonで同じ連続した違いを持つ数字を見つけるプログラム
連続する2桁ごとの絶対差がKになるようなサイズNの配列を見つける必要があるとします。回答のすべての数値には、数値0自体を除いて先行ゼロがあってはなりません。 したがって、入力がN =4 K =7の場合、出力は[1818、2929、7070、8181、9292]になります。ここでは、0707は先行ゼロであるため無効です。 これを解決するには、次の手順に従います- Nが1と同じ場合、 0から9の範囲の新しいリストを返します queue:=1から9までのすべての要素でキューを作成します 0からN-2の範囲のnの場合、実行 len_queue:=キューのサイズ
-
Pythonで有効な括弧を作成するために必要な最小限の削除を見つけるプログラム
括弧(、)と小文字の英語文字を含む文字列sがあるとします。結果の括弧文字列が有効になり、最終的に有効な文字列を返すように、最小数の括弧((または)、任意の位置から)を削除する必要があります。ここで、括弧文字列は、これらの基準がすべて満たされている場合に有効です- 文字列は空で、小文字のみが含まれている、または 文字列は、AB(AとBを連結したもの)として記述できます。ここで、AとBは有効な文字列、または 文字列は(A)の形式で記述できます。ここで、Aは有効な文字列です。 したがって、入力がs =m)n(o)pの場合、出力は mn(o)pになります。 これを解決するには
-
Pythonで文字列として指定された数値のすべての部分文字列の合計を見つけるプログラム
文字列形式の数値があり、sのすべての部分文字列の合計を見つける必要があるとします。答えは非常に大きい可能性があるため、10 ^ 9+7を法とする結果を返します。 したがって、入力がs =268の場合、サブストリングが 2、 6、 8、 26、 68、および 268であるため、出力は378になります。合計は378です。 。 これを解決するには、次の手順に従います- M:=10 ^ 9 + 7 sum_val:=0 B:=1 res:=0 s-1から0までの範囲サイズのiの場合、1ずつ減らします。 res:=(res + s [i] * B *(i + 1)の桁値)mod
-
Pythonで2つの文が類似しているかどうかを確認するプログラム
2つの文sとtがあるとします。それらが類似しているかどうかを確認する必要があります。ここの文は英語の文字だけです。 2つの文が等しくなるように、これらの与えられた文の1つに任意の文(おそらく空)を追加できる場合、2つの文は類似していると言われます。 したがって、入力がs =we live at city Kolkata t =city Kolkataの場合、「we live in」という文を追加することで、tからsを取得できるため、出力はTrueになります。 これを解決するには、次の手順に従います- s1:=s内の単語のリスト s2:=t内の単語のリスト s2のサイズの場合
-
Pythonで時分時間をテキスト形式に変換するプログラム
時間と分の2つの入力があるとします。時間をテキスト形式で表示する必要があります。これは-のようなものです 8:00:8時の時計 8:01:8時1分 8:10:8時10分 8:15:8時15分 8:30:8時半 8:40:20分から9分 8:45:4分の1から9まで 8:47:13分から9分 8:28:8時28分 したがって、入力がh =9、m =42の場合、出力は18分から10になります。 これを解決するには、次の手順に従います- text:=次の30の異なる数値のテキストを含むリスト:[one、 two、 three、 four、 five、 six、 seve
-
Pythonで配列内の素敵なペアを数えるプログラム
負でない値を持つnumsという配列があるとします。配列に存在するインデックスの適切なペアの数を見つける必要があります。答えが大きすぎる場合は、答えmod 10 ^ 9+7を返します。ここで、インデックスのペア(i、j)は、次のすべての条件を満たす場合に適していると言われます。1. 0 <=i
-
Pythonで文字列とその部分文字列の完全な類似性を見つけるプログラム
文字列sがあるとします。文字列の各サフィックスとの類似性の合計を見つける必要があります。ここで、2つの文字列の類似性は、両方の文字列に共通する最長のプレフィックスの長さです。 したがって、入力がs =pqpqppの場合、文字列のサフィックスは pqpqpp、 qpqpp、 pqpp、 qpp、 pp、および pであるため、出力は11になります。これらの部分文字列と文字列pqpqppの類似点は、6,0,3,0,1、および1です。したがって、合計は6 + 0 + 3 + 0 + 1 + 1=11です。 これを解決するには、次の手順に従います- 長さ:=sのサイズ 合計:=長さ z:=0最初
-
Pythonで指定された2つの文字列の最大長のマージを取得するプログラム
2つの文字列sとtがあるとします。次の方法でmergeという文字列を作成する必要があります。sまたはtのいずれかが空でない場合は、次のオプションのいずれかを選択します- sが空でない場合は、sの最初の文字を追加してマージし、sから削除します。 tが空でない場合は、tの最初の文字を追加してマージし、tから削除します。 したがって、辞書式順序で最大のマージを見つける必要があります。 したがって、入力がs =zxyxx t =yzxxxの場合、出力はzyzxyxxxxxになります。 sから選択:merge =z、s =xyxx、t =yzxxx tから選択:merg
-
Pythonで最小の絶対和の差を見つけるプログラム
同じサイズの2つの正の値の配列nums1とnums2があるとします。これら2つの配列の絶対和の差は、| nums1 [i] --nums2[i]|の合計です。各0<=i
-
Pythonで素敵なサブアレイの数を数えるプログラム
numsという配列と別の値kがあるとします。素敵なサブ配列の数を見つける必要があります。サブアレイに奇数がk個ある場合、そのサブアレイは優れたサブアレイであると言われます。 したがって、入力がnums =[1,1,2,1,1]、k =3の場合、2つのサブ配列[1,1,2,1]と[1,2]があるため、出力は2になります。 、1,1]。 これを解決するには、次の手順に従います- odd_i:=新しいリスト 0からnums-1のサイズのiの場合、実行します nums [i] mod 2が1と同じ場合、 odd_iの最後にiを挿入します 開始:=0、終了:=k
-
Pythonで最長のフィボナッチサブシーケンスの長さを見つけるプログラム
X_1、X_2、...のような1つのシーケンスがあるとすると、-の場合、X_nはフィボナッチのようになります。 =3 X_i + X_i +1=すべてのi+2に対してX_i+2 <=n ここで、シーケンスを形成する厳密に増加する配列Aを想定し、Aの最長のフィボナッチのようなサブシーケンスの長さを見つける必要があります。そのようなシーケンスがない場合は、0を返します。 したがって、入力がA =[1,2,3,4,5,6,7,8]のようである場合、次のシーケンス[1,2,3,5,8]があるため、出力は5になります。長さ5。 これを解決するには、次の手順に従います- s
-
Pythonの各クエリの最大XORを見つけるプログラム
サイズnのnumsと呼ばれる事前に並べ替えられた配列があり、値bも1つあるとします。次のクエリをn回実行します- numsおよびkのすべての要素のXORが最大になるように、非負の値k <2^mを検索します。したがって、kはi番目のクエリに対する答えです。 現在の配列番号から最後の要素を削除します。 配列の回答を見つける必要があります。ここで、answer[i]はi番目のクエリに対する回答です。 したがって、入力がnums =[0,1,1,3]、m =2の場合、出力は[0,3,2,3]になります。これは、 nums =[0,1,1,3]、k =0(0 XOR 1 X
-
Pythonで最大のアイスクリームバーを見つけるプログラム
n個の要素を持つ配列コストがあるとします。ここで、costs[i]はコインのi番目のアイスクリームバーの価格です。最初はc数のコインを使う必要があり、できるだけ多くのアイスクリームバーを購入したいと考えています。 cコインで購入できるアイスクリームバーの最大数を見つける必要があります。 したがって、入力がコスト=[3,1,4,5,2]、c =10のようである場合、インデックス0、1、2、4のアイスクリームバーを合計で購入できるため、出力は4になります。 3 + 1 + 4 + 2=10の価格。 これを解決するには、次の手順に従います- リストのコストを並べ替える i:=0
-
Pythonで最も頻繁な要素の頻度を見つけるプログラム
配列numsと別の値kがあるとします。 1つの操作で、数値のインデックスを選択し、そのインデックスの要素を1つ増やすことができます。最大k回の操作を実行した後、要素の可能な最大頻度を見つける必要があります。 したがって、入力がnums =[8,3,6]、k =9のような場合、3 x 5、6 x 2を更新して[8,8,8]にすることができるため、出力は3になります。 7回の操作の後、最大頻度は3になります。 これを解決するには、次の手順に従います- リスト番号を並べ替える 左:=0、右:=1 正しい
-
Pythonですべての母音の最長の部分文字列を順番に検索するプログラム
英語の母音だけの文字列sがあるとすると、sの最も長い美しい部分文字列の長さを見つける必要があります。そのような部分文字列が見つからない場合は、0を返します。次の条件を満たす場合、文字列は美しいと言われます- 5つの母音のそれぞれは、少なくとも1回は出現する必要があります。 文字はアルファベット順に並べ替える必要があります したがって、入力がs =aaioaaaaeiiouuooaauuの場合、サブストリングが美しい aaaaeiiouuであるため、出力は10になります。 これを解決するには、次の手順に従います- 母音:=すべての母音のリスト[a、e、i、o、u]
-
Pythonで最も近いサブシーケンスの合計を見つけるプログラム
配列numsと別の値の目標があるとします。要素の合計が目標に最も近くなるように、numsのサブシーケンスを選択する必要があります。つまり、サブシーケンスの要素の合計がsの場合、絶対差| s--goal|を最小化する必要があります。 したがって、| s --goal |の可能な最小値を見つける必要があります。したがって、入力がnums =[8、-8,16、-1]goal =-3の場合、出力は2になります。サブシーケンス[8、-8、-1]、合計-1。絶対差は|-1-(-3)|です。 =abs(2)=2、これは最小値です。 これを解決するには、次の手順に従います- n:=numsのサイズ
-
PythonでKに類似した文字列のKの最小値を見つけるプログラム
2つの文字列sとtがあるとします。これらの2つの文字列は、s内の2つの文字の位置を正確にK回入れ替えて、結果の文字列がtになる場合、Kに似ています。したがって、2つのアナグラムsとtがあり、sとtがKに類似している最小のKを見つける必要があります。 したがって、入力がs =abc t =bacの場合、出力は1になります。 これを解決するには、次の手順に従います- 関数neighbors()を定義します。これにはnew_dataが必要です new_dataの各インデックスiと値cについて、実行します cがt[i]と同じでない場合、 ループから出てきます
-
Pythonで座席予約マネージャーを実装するプログラム
n席の予約状態を管理するシステムを設計する必要があるとします。座席番号は1からnまでです。したがって、これらの関数を使用して、SeatReserveManagerクラスを実装する必要があります- nを入力として受け取り、1からnまでの番号が付けられたn個のシートを管理するオブジェクトを初期化するコンストラクター。最初はすべての座席が空いています。 reserved()、これは最小番号の予約されていないシートをフェッチし、それを予約して、その番号を返します。 unreserve(seatNumber)、これは指定されたseatNumberで1つの予約済みシートを予約解除します。
-
Pythonで減少および再配置した後に最大要素を見つけるプログラム
arrという配列があるとします。これらの条件を満たすために、arrに対していくつかの操作を実行する必要があります- arrの最初の要素は1でなければなりません。 隣接する2つの要素間の絶対差は最大で1でなければなりません。 そして、2つの操作があります。これらの2つのタイプの操作は何度でも実行できます- arrの値を正の数よりも小さくします。 arrの要素を任意の順序に再配置します。 与えられた条件を満たすための操作を実行した後、arrで可能な最大値を見つける必要があります。 したがって、入力がarr =[3,3,2,3,2]の場合、出力は3になります。こ