-
Pythonのショップで特別割引付きの最終価格を見つけるプログラム
iであり、j番目のアイテムの価格がi番目のアイテム(つまり、prices [j] <=price [i])、それ以外の場合、割引はまったく受けられません。特別割引を考慮して、i番目の要素がショップのi番目のアイテムに支払う最終価格である配列を見つける必要があります。 したがって、入力がprices =[16,8,12,4,6]のようである場合、item0の価格は16であるため、出力は[8、4、8、4、6]になり、次のようになります。 price [1] =8に相当する割引の場合、最終価格は8-4 =4になります。item1の場合、price [1]が8の場合、prices [3] =2に相当
-
Pythonで1d配列の実行中の合計を見つけるプログラム
配列numsがあるとします。 rs [i]としての配列の現在の合計は、nums[0]からnums[i]までのすべての要素の合計です。最後に、実行中のnumの合計全体を返します。 したがって、入力がnums =[8,3,6,2,1,4,5]の場合、出力は[8、11、17、19、20、24、29]になります。これは、 rs[0] = nums[0] rs[1] = sum of nums[0..1] = 8 + 3 = 11 rs[2] = sum of nums[0..2] = 8 + 3 + 6 = 17 and so on これを解決するには、次の手順に従います- n:=numsの
-
Pythonを使用して配列でXOR演算を実行するプログラム
整数nと別の整数の開始があるとします。 numsという配列を作成する必要があります。ここで、nums [i] =start + 2 * i(iは0から開始)で、nはnumsのサイズです。次に、numsのすべての要素のビット単位のXORを見つけます。 したがって、入力がn =6、start =2の場合、配列は[2 + 2 * 0、2 + 2 * 1、... 2 + 2 * 5] =のようになるため、出力は14になります。 [2,4,6,8,10,12]の場合、配列に存在する各要素のXORは14です。 これを解決するには、次の手順に従います- count:=start 0の場合、
-
Pythonで最低給与と最高給与を除いた平均給与を見つけるプログラム
Suppoeには、salary[i]がi番目の従業員の給与であるsalaryと呼ばれる個別の要素を持つ配列があります。最低給与と最高給与を除いた従業員の平均給与を見つける必要があります。 したがって、入力がsalary =[8000,6000,2000,8500,2500,4000]の場合、最小および最大の給与値は2000および8500であるため、出力は5125.0になります。したがって、これらを除外すると、平均給与値は次のようになります。 [8000,6000,2500,4000]なので、平均は(8000 + 6000 + 2500 + 4000)/ 4=5125です。 これを解決するに
-
Pythonでシーケンスから等差数列を作成できることを確認するプログラム
numsという番号のリストがあるとします。 numsに存在する要素がAPシリーズを形成しているかどうかを確認する必要があります。 AP(等差数列)シリーズで知っているように、2つの連続する要素間の一般的な違いは同じです。 したがって、入力がnums =[9,1,17,5,13]のような場合、出力はTrueになります。これは、それらを並べ替えると[1,5,9,13,17]になり、ここでは一般的であるためです。要素のペアごとに差は4です。 これを解決するには、次の手順に従います- nums:=リストを並べ替えるnums numsの要素数が1より大きい場合、 const:=n
-
Pythonを使用してYYYY-MM-DD形式で日付を再フォーマットするプログラム
「DayMonthYear」形式の日付文字列があり、日が[1st、2nd、...、30th、31st]のようになり、月が[Jan、Feb、... Nov、Dec]形式であるとします。年は1900〜2100の範囲の4桁の数値であるため、この日付を「YYYY-MM-DD」形式に変換する必要があります。 したがって、入力がdate =23rd Jan 2021のような場合、出力は2021-01-23になります。 これを解決するには、次の手順に従います- 月:=[Jan、 Feb、 Mar、 Apr、 May、 Jun、 Jul、 Aug、 Sep、 Oct、 Nov、 Dec ]
-
Pythonで適切なペアの数を見つけるプログラム
配列numsがあるとします。ここで、nums[i]がnums[j]と同じで、i
-
Pythonで飲むことができるウォーターボトルの最大数を見つけるためのプログラム
フルウォーターボトルがn個あるとすると、m個の空のウォーターボトルを1本のフルウォーターボトルに交換できます。今、完全な水のボトルを飲むと、それは空のボトルになります。飲むことができる水のボトルの最大数を見つける必要があります。 したがって、入力がn =9、m =3の場合、最初は9本のボトルがあるため、出力は13になります。したがって、すべてのボトルを飲んだ後、すべてを飲んだ後、9/3=3本のフルボトルを取得できます。空のボトルが3つあり、それらを使用して1つ購入して飲むことができるので、9 + 3 + 1=13本のボトルを完成させました。 これを解決するには、次の手順に従います-
-
Pythonを使用して区間範囲内の奇数をカウントするプログラム
左右に2つの非負の数があるとします。左と右の間の奇数の数を見つける必要があります(両端を含む)。 したがって、入力が左=3、右=15のようである場合、範囲内に7つの奇数があるため、出力は7になります。これらは[3,5,7,9,11,13,15]であり、 7つの要素。 これを解決するには、次の手順に従います- 左が奇数または右が奇数の場合、 1 +(右左)/2の商を返す それ以外の場合 (左右)/2の商を返す 例(Python) 理解を深めるために、次の実装を見てみましょう- def solve(left, right): if
-
Pythonで指定されたインデックスを使用して文字列をシャッフルするプログラム
文字列sとインデックスindのリストがあり、それらは同じ長さであるとします。文字列sは、位置iの文字が最終文字列のindexes[i]に移動するようにシャッフルされます。最後の文字列を見つける必要があります。 したがって、入力がs =ktoalak ind =[0,5,1,6,2,4,3]の場合、出力は「コルカタ」になります これを解決するには、次の手順に従います- fin_str:=サイズがsと同じで、0で埋められるリスト sの各インデックスiと文字vについて、実行します fin_str [ind [i]]:=v fin_strに存在する各文字を結合し
-
Pythonで良いトリプレットの数を見つけるためのプログラム
配列numsと、3つの異なる整数a、b、cがあるとします。良いトリプレットの数を見つけなければなりません。トリプレット(nums [i]、nums [j]、nums [k])は、次の条件が当てはまる場合に適切なトリプレットであると言われます- 0 <=i
-
Pythonの配列でk番目に欠落している正の数を見つけるプログラム
正にソートされた厳密に増加する値を持つnumsという配列があり、整数kもあるとします。この配列から欠落しているk番目の正の整数を見つける必要があります。 したがって、入力がnums =[1,2,4,8,12]、k =6のような場合、欠落している数値は[3,5,6,7,9,10,11であるため、出力は10になります。 ]、ここで第6項は10です。 これを解決するには、次の手順に従います- nums:=numsに存在する要素からの新しいセット カウント:=0 num:=1
-
Pythonで特定の文字列から適切な文字列を見つけるプログラム
小文字と大文字の英語の文字列sがあるとします。文字列は、隣接する2つの文字s[i]とs[i+1]を持たない適切な文字列であると見なします。ここで- 0 <=i<=sのサイズ-2 s [i]は小文字で、s [i + 1]は同じ文字ですが、大文字またはその逆です。 文字列を適切な文字列に変換するには、文字列を不適切にする2つの隣接する文字を選択し、それらを削除します。文字列が適切になるまでこのプロセスを続行します(空の文字列が適切な場合もあります)。弦を良くしてから見つけなければなりません。 したがって、入力がs =popPpulaBbrのような場合、最初は p P を削除す
-
Pythonに3つの連続したオッズが存在するかどうかをチェックするプログラム
numsという配列があるとすると、numsに3つの連続した奇数があるかどうかを確認する必要があります。 したがって、入力がnums =[18,15,2,19,3,11,17,25,20]のようである場合、3つの連続したオッズ[3,11,17]があるため、出力はTrueになります。 これを解決するには、次の手順に従います- 長さ:=numsのサイズ 長さが1と同じか、長さが2と同じ場合、 Falseを返す それ以外の場合 0からnums-3のサイズのiの場合、実行 nums [i]、nums [i + 1]、nums [i + 2]がすべてオッズの場合
-
Pythonで千単位の区切り文字で数値を検索するプログラム
数値nがあるとすると、この数値を文字列形式で返す必要があります。文字列形式では、数千がコンマ( 、)で区切られます。 したがって、入力がn =512462687のような場合、出力は「512,462,687」になります これを解決するには、次の手順に従います- res:=n as string res:=resの逆形式 ans:=空白の文字列 0からres-1のサイズまでの範囲のiの場合、実行します i mod 3が0と同じで、iが0と同じでない場合、 ans:=ans concatenate、 ans:=ans concatenate re
-
Pythonを使用して循環トラックで最も訪問されたセクターを見つけるプログラム
数nとroundsという配列があるとします。 1からnまでのラベルが付いたn個の異なるセクターで構成される円形のトラックがあります。ここで、このトラックでレースが開催されることを考えてみましょう。レースはm個の異なるラウンドで構成されています。 i番目のラウンドはセクターラウンド[i-1]で始まり、セクターラウンド[i]で終わります。たとえば、ラウンド1がセクターラウンド[0]で始まり、セクターラウンド[1]で終わる場合です。したがって、最も訪問されたセクターを昇順でソートする必要があります。 (トラック番号は、反時計回りにセクター番号の昇順です) したがって、入力がn =4ラウンド=[1,
-
PythonにK回以上繰り返される長さmのパターンをチェックするプログラムが存在するかどうか
正の値の配列numがあるとすると、k回以上繰り返される長さmのパターンを見つける必要があります。ここで、パターンは、1つ以上の値で構成され、複数回繰り返される重複しないサブ配列(連続)です。パターンは、その長さと繰り返しの数によって定義されます。 k回以上繰り返される長さmのパターンが存在するかどうかを確認する必要があります。 したがって、入力がnums =[3,5,1,4,3,1,4,3,1,4,3,9,6,1]、m =3、k =2の場合、出力は3回存在するパターン[1,4,3]があるため、Trueになります。 これを解決するには、次の手順に従います- 0からnums-1のサイズの
-
Pythonで行列の対角和を見つけるプログラム
正方行列があるとします。行列の対角線の合計を見つける必要があります。したがって、一次対角線上のすべての要素と二次対角線上のすべての要素の合計のみを含め、交差する要素は無視してください。 したがって、入力が次のような場合 10 5 9 6 8 15 3 2 3 8 12 3 2 11 7 3 その場合、出力は次のようになります。一次対角要素は[10,15,12,3]合計が40、二次対角要素[6,3,8,2]合計が19なので、合計は59です。 これを解決するには、次の手順に従います- m:=行列の行
-
Pythonで文字が連続して繰り返されないように、すべての質問記号を置き換えるプログラム
文字と「?」のみを含む小文字の文字列があるとします。文字、すべての「?」を変換する必要があります最後の文字列に連続する繰り返し文字が含まれないように、文字を小文字に変換します。複数の解決策がある場合は、それらのいずれかを返します。 したがって、入力がs =hel ??の場合、出力はhelabになります。最初の疑問符は「l」以外のいずれかであり、最初の疑問符が指定された場合、2番目の疑問符は「a」以外の任意の値になります。 。 これを解決するには、次の手順に従います- sのサイズが1と同じ場合、 sが「?」と同じ場合、 「a」を返す sを返す s:=sに
-
Pythonを使用してバイナリ行列内の特別な位置の数を見つけるプログラム
次数mxnのバイナリ行列があるとすると、行列内の特別な位置の数を見つける必要があります。位置(i、j)は、mat [i、j] =1で、行iと列jの他のすべての要素が0の場合の特別な位置です。 したがって、入力が次のような場合 1 0 0 0 0 0 0 1 0 0 0 0 0 1 1 0 1 0 0 0 その場合、出力は3になります。ここで、特別な位置は(0、0)、(1,2)、および(3,1)です。 これを解決するには、次の手順に従います- 特別:=0 0から行列の行数ま