Pythonで2つの部分に分割されないように、チェス盤で最小限のカットを行うことができます
A x Bのチェス盤(マトリックス)が1つあるとすると、ボードが2つの部分に分割されないように、このボードで作成できるカットの最大数を計算する必要があります。
したがって、入力がA=2およびB=4のような場合、
その場合、出力は3
になります。これを解決するには、次の手順に従います-
- res:=0
- res:=(M-1)*(N-1)
- return res
例
理解を深めるために、次の実装を見てみましょう-
def max_cuts_count(M, N): res = 0 res = (M - 1) * (N - 1) return res M, N = 2, 4 Cuts = max_cuts_count(M, N) print(Cuts)
入力:
2,4
出力
3
-
Pythonでgodownに入れることができるボックスの数を調べるプログラム
整数を含む2つの配列があるとします。 1つのリストには、いくつかのユニット幅ボックスの高さが含まれ、別の配列には、godownの部屋の高さが含まれます。部屋には0...nの番号が付けられ、部屋の高さは配列godownのそれぞれのインデックスに示されます。ゴダウンに押し込める箱の数を調べなければなりません。いくつかの点に注意する必要があります ボックスを重ねることはできません。 ボックスの順序は変更できます。 ボックスは、左からでも右からでも、どの側からでもゴダウンに入れることができます。ボックスが部屋の高さよりも高い場合、そのボックスとその右側のすべてのボックスをゴダウンに押
-
Pythonでボードを正方形にカットするための最小コスト
長さp、幅qのボードがあるとします。このボードをp*qの正方形に分割して、分割のコストを可能な限り最小限に抑える必要があります。各エッジの切削コストが示されます。 したがって、入力がX_slice =[3,2,4,2,5]の場合、Y_slice =[5,2,3] その場合、出力は65になります これを解決するには、次の手順に従います- res:=0 水平:=1、垂直:=1 i:=0、j:=0 i