Pythonで行列を反転および反転
バイナリ行列マットがあるとします。行列の各行を選択してから、行を逆にする必要があります。その後、各ビットを反転します(0から1および1から0)。
したがって、入力が次のような場合
1 | 1 | 0 |
0 | 1 | 0 |
0 | 0 | 1 |
その場合、出力は次のようになります
1 | 0 | 0 |
1 | 0 | 1 |
0 | 1 | 1 |
これを解決するには、次の手順に従います-
- track:=0
- マットの各列について、
- 行を逆にする
- トラッカー:=0
- 行の各valについて、
- valが1の場合、
- mat [track、tracker]:=0
- それ以外の場合、
- mat [track、tracker]:=1
- トラッカー:=トラッカー+ 1
- valが1の場合、
- track:=track + 1
- リターンマット
理解を深めるために、次の実装を見てみましょう-
例
class Solution: def solve(self, mat): track=0 for row in mat: row.reverse() tracker = 0 for val in row: if val == 1: mat[track][tracker] = 0 else: mat[track][tracker] = 1 tracker += 1 track += 1 return mat ob = Solution() mat = [[1,1,0],[0,1,0],[0,0,1]] print(ob.solve(mat))
入力
[[1,1,0],[0,1,0],[0,0,1]]
出力
[[1, 0, 0], [1, 0, 1], [0, 1, 1]]
-
Pythonでの順列と組み合わせ?
このセクションでは、Pythonプログラミング言語を使用して特定のシーケンスの順列と組み合わせを見つける方法を学習します。 他のプログラミング言語に対するPythonの主な利点の1つは、Pythonに膨大なライブラリセットが付属していることです。 python組み込みパッケージを使用して、特定のシーケンスの順列と組み合わせを検索します。 順列と組み合わせを見つけるためのアルゴリズム ステップ1 :必要なパッケージをインポートします。最初のステップは、itertoolsパッケージを使用するため、必要なパッケージをインポートすることです。そのため、を使用してインポートします。 &g
-
=+と+=はPythonで何をしますか?
+ =演算子は、object .__ iadd __()関数のシンタックスシュガーです。 Pythonドキュメントから: これらのメソッドは、拡張された算術割り当て(+ =、-=、* =、@ =、/ =、// =、%=、** =、)を実装するために呼び出されます。 =、&=、^ =、| =)。これらのメソッドは、その場で操作を実行し(自己を変更)、結果を返すようにする必要があります(自己である可能性がありますが、そうである必要はありません)。 例 だからあなたが次のようなことをするとき- a = 5 b = 10 a += b print(a) 出力 これにより、出力が得られます- 15