|
14 | 14 | def compute_transform_tables(
|
15 | 15 | X: str, Y: str, cC: int, cR: int, cD: int, cI: int
|
16 | 16 | ) -> Tuple[List[int], List[str]]:
|
17 |
| - X = list(X) |
18 |
| - Y = list(Y) |
19 |
| - m = len(X) |
20 |
| - n = len(Y) |
| 17 | + X: List[str] = list(X) |
| 18 | + Y: List[str] = list(Y) |
| 19 | + m: int = len(X) |
| 20 | + n: int = len(Y) |
21 | 21 |
|
22 |
| - costs = [[0 for _ in range(n + 1)] for _ in range(m + 1)] |
23 |
| - ops = [[0 for _ in range(n + 1)] for _ in range(m + 1)] |
| 22 | + costs: List[List[int]] = [[0 for _ in range(n + 1)] for _ in range(m + 1)] |
| 23 | + ops: List[List[int]] = [[0 for _ in range(n + 1)] for _ in range(m + 1)] |
24 | 24 |
|
25 | 25 | for i in range(1, m + 1):
|
26 | 26 | costs[i][0] = i * cD
|
@@ -52,33 +52,33 @@ def compute_transform_tables(
|
52 | 52 |
|
53 | 53 | def assemble_transformation(ops: List[str], i: int, j: int) -> List[str]:
|
54 | 54 | if i == 0 and j == 0:
|
55 |
| - seq = [] |
| 55 | + seq: List = [] |
56 | 56 | return seq
|
57 | 57 | else:
|
58 | 58 | if ops[i][j][0] == "C" or ops[i][j][0] == "R":
|
59 |
| - seq = assemble_transformation(ops, i - 1, j - 1) |
| 59 | + seq: List = assemble_transformation(ops, i - 1, j - 1) |
60 | 60 | seq.append(ops[i][j])
|
61 | 61 | return seq
|
62 | 62 | elif ops[i][j][0] == "D":
|
63 |
| - seq = assemble_transformation(ops, i - 1, j) |
| 63 | + seq: List = assemble_transformation(ops, i - 1, j) |
64 | 64 | seq.append(ops[i][j])
|
65 | 65 | return seq
|
66 | 66 | else:
|
67 |
| - seq = assemble_transformation(ops, i, j - 1) |
| 67 | + seq: List = assemble_transformation(ops, i, j - 1) |
68 | 68 | seq.append(ops[i][j])
|
69 | 69 | return seq
|
70 | 70 |
|
71 | 71 |
|
72 | 72 | if __name__ == "__main__":
|
73 | 73 | _, operations = compute_transform_tables("Python", "Algorithms", -1, 1, 2, 2)
|
74 | 74 |
|
75 |
| - m = len(operations) |
76 |
| - n = len(operations[0]) |
77 |
| - sequence = assemble_transformation(operations, m - 1, n - 1) |
| 75 | + m: int = len(operations) |
| 76 | + n: int = len(operations[0]) |
| 77 | + sequence: List = assemble_transformation(operations, m - 1, n - 1) |
78 | 78 |
|
79 |
| - string = list("Python") |
80 |
| - i = 0 |
81 |
| - cost = 0 |
| 79 | + string: List[str] = list("Python") |
| 80 | + i: int = 0 |
| 81 | + cost: int = 0 |
82 | 82 |
|
83 | 83 | with open("min_cost.txt", "w") as file:
|
84 | 84 | for op in sequence:
|
|
0 commit comments