Compare commits

...

2 Commits

Author SHA1 Message Date
MaximSmolskiy
31764fa82a Fix 2023-08-05 15:10:04 +03:00
MaximSmolskiy
1338d85899 Fix review issues 2023-08-05 15:08:02 +03:00

View File

@ -75,8 +75,8 @@ def is_for_table(string1: str, string2: str, count: int) -> bool:
list1 = list(string1) list1 = list(string1)
list2 = list(string2) list2 = list(string2)
count_n = 0 count_n = 0
for i in range(len(list1)): for item1, item2 in zip(list1, list2):
if list1[i] != list2[i]: if item1 != item2:
count_n += 1 count_n += 1
return count_n == count return count_n == count
@ -92,18 +92,18 @@ def selection(chart: list[list[int]], prime_implicants: list[str]) -> list[str]:
temp = [] temp = []
select = [0] * len(chart) select = [0] * len(chart)
for i in range(len(chart[0])): for i in range(len(chart[0])):
count = sum(chart[j][i] == 1 for j in range(len(chart))) count = sum(row[i] == 1 for row in chart)
if count == 1: if count == 1:
rem = max(j for j in range(len(chart)) if chart[j][i] == 1) rem = max(j for j, row in enumerate(chart) if row[i] == 1)
select[rem] = 1 select[rem] = 1
for i in range(len(select)): for i, item in enumerate(select):
if select[i] != 1: if item != 1:
continue continue
for j in range(len(chart[0])): for j in range(len(chart[0])):
if chart[i][j] != 1: if chart[i][j] != 1:
continue continue
for k in range(len(chart)): for row in chart:
chart[k][j] = 0 row[j] = 0
temp.append(prime_implicants[i]) temp.append(prime_implicants[i])
while True: while True:
counts = [chart[i].count(1) for i in range(len(chart))] counts = [chart[i].count(1) for i in range(len(chart))]