-
Pythonで整数の配列のすべての数とXORするときに最小の合計を与える数を見つけます
配列Aがあるとすると、(A [0] XOR X)+(A [1] XOR X)+…+ A [n – 1]XORXが可能な限り最小になるような数Xを見つける必要があります。 したがって、入力が[3、4、5、6、7]の場合、出力はX =7、Sum =10になります。 これを解決するには、次の手順に従います- 関数search_res()を定義します。これには時間がかかります、n 要素:=arr [0] 0からarrのサイズまでの範囲のiについては、 要素の場合、 要素:=arr [i] p:=(要素の底2の対数)+1の整数 X:=0 0からpの範囲のiについては、
-
Pythonで指定された2つの文字列の間にある辞書式順序で文字列を検索します
2つの文字列SとTがあるとすると、辞書式順序でSより大きくTより小さい同じ長さの文字列かどうかを確認する必要があります。そのような文字列がない場合は、-1を返す必要があります。 S =S1S2…Snは、辞書式順序でT =T1T2…Tnよりも小さいと呼ばれることに注意する必要があります。ただし、iが存在する場合、S1 =T1、S2 =T2、…Si – 1 =Ti – 1 Si
-
Pythonの配列内の1つの要素を除くすべての除数である整数Xを見つけます
数値の配列があるとします。与えられた配列の1つの要素を除いて、すべての約数である数Bを見つける必要があります。すべての要素のGCDが1ではないことに注意する必要があります。 したがって、入力が{8、16、4、24}のような場合、これは4を除くすべての除数であるため、出力は8になります。 これを解決するには、次の手順に従います- n:=配列のサイズ nが1と同じ場合、 return(array [0] + 1) プレフィックス:=サイズnの配列、0で埋める 接尾辞:=サイズnの配列で、0で埋めます prefix [0]:=array [0] 1からnの範囲のiについては、
-
123Pythonでの数値反転
整数nがあり、これらの数字が1、2、および3つしか存在しないとします。 1桁を3に反転できます。次に、作成できる最大数を見つけます。 したがって、入力が11332のような場合、出力は31332になります これを解決するには、次の手順に従います- li:=nの数字によるリスト 範囲0からli-1のサイズのxの場合、実行 li [x]が「3」でない場合、 li [x]:=3 liからの数字をマージして数値を返す nを返す 理解を深めるために、次の実装を見てみましょう- 例 class Solution: def s
-
Pythonで24時間
文字列sがあるとします。ここで、sは、接尾辞amまたはpmが付いた12時間制を表します。これは、24時間制に相当するものを見つける必要があります。 したがって、入力が「08:40 pm」の場合、出力は「20:40」になります これを解決するには、次の手順に従います- hour:=(sの部分文字列[インデックス0から2]を整数に変換)mod 12 分:=sの部分文字列[インデックス3から5]を整数に変換 s[5]がpと同じ場合、 時間:=時間+ 12 結果を時間:分として返します 理解を深めるために、次の実装を見てみましょう- 例 class
-
Pythonで3-6-9
番号nがあるとすると、3の倍数であるか、3、6、または9が含まれている場合を除いて、1からnまでの各番号でリストを作成する必要があります。数字の場合は、「no-fill」という文字列にする必要があります。 したがって、入力が20の場合、出力は[1、 2、 clap、 4、 5、 clap、 7、 8、clap、 10、 11、clap、clap、 14、clap、clap、 17、clap、clap、 20 ] これを解決するには、次の手順に従います- string:=no-fill ls:=1からnまでの文字列として数値のリストを作成します 範囲0からls-1のサイズ
-
Pythonの3と7
正の数nがあるとすると、3の非負の倍数と7の非負の倍数を合計することでnを作成できることを確認する必要があります。 したがって、入力が13のような場合、13は1 * 7 + 2 * 3 =13 と記述できるため、出力はTrueになります。 これを解決するには、次の手順に従います- 0からn+1の範囲のiの場合、7ずつ増やします。 n-iが3で割り切れる場合、 Trueを返す Falseを返す 理解を深めるために、次の実装を見てみましょう- 例 class Solution: def solve(self, n):
-
Pythonの蓄電池
「エコモード」の携帯電話があるとします。このモードは、バッテリーレベルが20%に達するとアクティブになります。このエコモードでは、バッテリーの消耗が通常モードの2倍遅くなります。今、私たちが家を出るとき、私たちは100%のバッテリーを持っています。次に、バッテリーのpパーセントが残ってからt分後。電話がオフになるまでの時間数を確認する必要があります。 したがって、入力がt=75およびp=25の場合、出力は45になります これを解決するには、次の手順に従います- p <20の場合、 2 * p * t /(120-2 * p)を返す それ以外の場合は(p + 20)* t
-
Pythonの頭字語
フレーズを表す文字列sがあるとすると、その頭字語を見つける必要があります。頭字語は大文字にする必要があり、「and」という単語を含めることはできません。 したがって、入力が「インド宇宙研究機関」のようなものである場合、出力はISROになります これを解決するには、次の手順に従います- tokens:=配列としてのsの各単語 string:=空白の文字列 トークン内の単語ごとに、実行します 単語が「and」でない場合、 string:=文字列は単語の最初の文字を連結します 文字列を大文字に変換する 理解を深めるために、次の実装を見てみましょう
-
Pythonで時間を追加する
接尾辞amまたはpmが付いた12時間制の時刻を表す文字列があり、整数nも指定されている場合、時刻にn分を追加し、同じ形式で新しい時刻を返します。 したがって、入力がs =8:20 pm、n =150の場合、出力は10:50pmになります これを解決するには、次の手順に従います- h、m:=sから時間と分の部分を取ります h:=h mod 12 時間sが「午後」の場合 h:=h + 12 t:=h * 60 + m + n h:=t / 60の商、m:=t/60の余り h:=h mod 24 接尾辞:=am(h <12の場合)それ以外の
-
Pythonで1つ追加
nという整数のリストがあるとします。これは10進数を表し、n [i]は[0、9]の間にあります。したがって、nが[2、4、9]の場合、数値249を表します。数値に1が追加されるように変更されていることを除いて、同じ表現で同じリストを見つける必要があります。 したがって、入力がn =[9,9]の場合、出力は[1、0、0]になります。 これを解決するには、次の手順に従います- n:=nの先頭に0を追加 nの最後の要素を1増やします n-1から0の範囲サイズのiの場合、1ずつ減らします。 n [i-1]:=n [i-1] +(n [i] / 10)の商 n [i]:
-
私がPythonで使用しているアナグラム
2つの文字列s0とs1があるとすると、それらが互いにアナグラムであるかどうかを確認する必要があります。私たちが知っているように、2つの文字列は、一方をもう一方に再配置できる場合、アナグラムと呼ばれます。 したがって、入力がs0 =listen、s1 =silentの場合、出力はTrueになります。 これを解決するには、次の手順に従います- s0とs1の文字を並べ替える s0とs1の文字のソートされたシーケンスが同じである場合、 Trueを返す それ以外の場合はFalseを返します 理解を深めるために、次の実装を見てみましょう- 例 class Soluti
-
Pythonの古代宇宙飛行士説
文字列辞書があるとすると、その辞書は古代宇宙飛行士の辞書の部分的な辞書式順序を表しています。したがって、文字列sがある場合は、この古代宇宙飛行士の辞書に従って辞書式順序で並べ替えられた文字列であるかどうかを確認する必要があります。 したがって、入力がdictionary =bdc、s =bbbb h ddd i ccccのような場合、出力はTrueになります これを解決するには、次の手順に従います- l:=astro_dictのサイズ lが0と同じ場合、 Trueを返す i:=0 sの各文字cについて、実行します astro_dictにcがある場合
-
Pythonの数とそのトリプル
numsという数字のリストがあるとすると、一方がもう一方の3倍になるように2つの数字があるかどうかを確認する必要があります。 したがって、入力がnums =[2、3、10、7、9]の場合、9は3のトリプルであるため、出力はTrueになります これを解決するには、次の手順に従います- i:=0 リストを並べ替えるn j:=1 j
-
Pythonで厳密に増加するリンクリスト
単一リンクリストの先頭があるとすると、ノードの値が厳密に昇順で並べ替えられているかどうかを確認する必要があります。 したがって、入力が[2,61,105,157]のような場合、出力はTrueになります。 これを解決するには、次の手順に従います- 関数solve()を定義します。これは頭を悩ます head.nextがnullの場合、 Trueを返す =head.next.valの場合、 Falseを返す リターンsolve(head.next) 理解を深めるために、次の実装を見てみましょう- 例 class ListNode: &nbs
-
PythonのAtbash暗号
textという小文字のアルファベット文字列があるとします。テキスト内のすべての文字がアルファベットの逆にマップされている新しい文字列を見つける必要があります。例として、aはzになり、bはyになります。 したがって、入力が「abcdefg」のような場合、出力は「zyxwvut」になります これを解決するには、次の手順に従います- N:=(z)のASCII +(a)のASCII テキスト内の各文字sのASCII値(N-sのASCII)から各文字を結合してansを返します 理解を深めるために、次の実装を見てみましょう- 例 class Solution: &n
-
Pythonの一意の文字列
文字列sがあるとすると、すべての一意の文字が含まれているかどうかを確認する必要があります。 したがって、入力が「world」のような場合、出力はTrueになります これを解決するには、次の手順に従います- set_var:=sのすべての文字からの新しいセット set_varのサイズがsのサイズと同じ場合はtrueを返し、それ以外の場合はfalseを返します 理解を深めるために、次の実装を見てみましょう- 例 class Solution: def solve(self, s): set_var = set
-
Pythonのオースティンパワーズ
0より大きい数があるとすると、その数が2の累乗であるかどうかを確認する必要があります。 したがって、入力が1024のような場合、出力はTrueになります。 これを解決するには、次の手順に従います- 1の場合、実行 n:=n / 2 nが1と同じ場合はtrueを返し、それ以外の場合は0 理解を深めるために、次の実装を見てみましょう- 例 class Solution: def solve(self, n): while n > 1:
-
Pythonの基数3から整数
基数3の数値(有効な数値0、1、または2)を表す文字列sがあるとすると、同等の10進整数を見つける必要があります。 したがって、入力が「10122」のような場合、出力は98になります。 これを解決するには、次の手順に従います- ans:=0 sの各桁cについて、実行します ans:=3 * ans + c ansを返す 理解を深めるために、次の実装を見てみましょう- 例 class Solution: def solve(self, s): ans = 0  
-
Pythonの大きな数
行列があるとすると、その行と列で値が最大の整数の総数を見つける必要があります。 したがって、入力が次のような場合 1 3 2 4 6 5 1 5 7 6と7が有効であるため、出力は2になります。 これを解決するには、次の手順に従います- マット:=マトリックス r_maxes:=マットの各行の最大要素のリストを作成する c_maxes:=マットの各列の最大要素のリストを作成する a:=新しいリスト 0から行数-1までの範囲のrの場合、実行 0から列数-1までの範囲のcの場合、実行 v:=ma