Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonの部屋のリストから最初の部屋を見つけるプログラム


部屋と呼ばれる番号のリストと別のターゲット値tがあるとします。値が少なくともtである部屋の最初の値を見つける必要があります。そのような部屋がない場合は、-1を返します。

したがって、入力がrooms =[20、15、35、55、30] t =30のようである場合、出力は35になります。30は35よりも小さく、前の部屋はターゲット30には不十分であるためです。

>

これを解決するには、次の手順に従います-

  • 部屋の各部屋について、実行します

    • 部屋>=tの場合、

      • 帰りの部屋

  • -1を返す

理解を深めるために、次の実装を見てみましょう

def solve(rooms, t):
   for room in rooms:
      if room >= t:
         return room
   return -1

rooms = [20, 15, 35, 55, 30]
t = 30
print(solve(rooms, t))

入力

[20, 15, 35, 55, 30], 30

出力

35

  1. Pythonの最初から最後のノードまでの制限されたパスの数を見つけるプログラム

    無向加重連結グラフが1つあるとします。グラフにはn個のノードがあり、1からnまでのラベルが付けられています。開始から終了までのパスは、[z0、z1、z2、...、zk]のようなノードのシーケンスです。ここで、z0は開始ノード、zkは終了ノードであり、ziとzi+1の間にエッジがあります。ここで0<=i dist(zi + 1)(0 <=i <=k-1)も満たす特別なパスです。したがって、ノード1からノードnまでの制限されたパスの数を見つける必要があります。答えが大きすぎる場合は、10 ^ 9+7を法として答えを返します。 したがって、入力が次のような場合 3つの制限されたパス(1,2

  2. リストの累積合計を見つけるPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −リストが与えられたので、累積合計でリストを作成する必要があります。 次に、以下の実装のソリューションを見てみましょう- 例 # cumulative sum def Cumulative(l):    new = []    cumsum = 0    for element in l:       cumsum += element       new.append(cumsum) &