Pythonで辺が指定されている場合、三角形が有効かどうかを確認します
3つの側面があるとします。これらの3つの辺が三角形を形成しているかどうかを確認する必要があります。
したがって、入力がsides =[14,20,10]のような場合、出力は20 <(10 + 14)としてTrueになります。
これを解決するには、次の手順に従います-
- リストの側面を並べ替える
- 最初の2つの辺の合計<=3番目の辺の場合、
- Falseを返す
- Trueを返す
理解を深めるために、次の実装を見てみましょう-
サンプルコード
def solve(sides): sides.sort() if sides[0] + sides[1] <= sides[2]: return False return True sides = [14,20,10] print(solve(sides))
入力
[14,20,10]
出力
True
-
与えられたツリーがPythonで対称ツリーであるかどうかをチェックするプログラム
二分木が1つあるとします。ツリーが対称ツリーであるかどうかを確認する必要があります。鏡像を撮ったときに同じである場合、木は対称であると言われます。これらの2つのツリーから、最初のツリーは対称ですが、2番目のツリーは対称ではありません。 これを解決するために、次の手順に従います。 次の手順を再帰的に呼び出します。関数はsolve(root、root)になります node1とnode2が空の場合、trueを返します node1またはnode2のいずれかが空の場合、falseを返します node1.val =node2.valおよびsolve(node1.lef
-
与えられたグラフがPythonで2部グラフであるかどうかをチェックするプログラム
無向グラフが1つあるとすると、グラフが2部グラフであるかどうかを確認する必要があります。グラフのすべてのエッジ{u、v}がAに1つのノードuを持ち、Bに別のノードvを持つように、グラフのノードを2つのセットAとBに分割できる場合、グラフは2部グラフであることがわかります。 したがって、入力が次のような場合 次に、出力はTrueになり、[0,4]はセットAにあり、[1,2,3]はセットBにあり、すべてのエッジはAからAまたはBからBではなく、AからBまたはBからAになります。 。 これを解決するために、次の手順に従います- 関数dfs()を定義します。これはソースを取ります