Compare commits

...

3 Commits

Author SHA1 Message Date
HOME-VM-TOSCHOOL
4d992a3879 Small adjustments 2023-10-21 02:07:06 +02:00
HOME-VM-TOSCHOOL
5f91662b8e zad A04 2023-10-21 02:06:55 +02:00
HOME-VM-TOSCHOOL
1060b283bf A03 2023-10-17 05:04:58 +02:00
6 changed files with 100099 additions and 20 deletions

View File

@ -1,5 +1,4 @@
import os import os
import time
NUMBER_OF_INVOICES = 10 NUMBER_OF_INVOICES = 10
@ -14,30 +13,18 @@ def join_path(filename: str) -> str:
with open(join_path("shakespeare.in"), "r", newline="", encoding="utf8") as file: with open(join_path("shakespeare.in"), "r", newline="", encoding="utf8") as file:
text = file.readlines() text = file.readlines()
start_time = time.time()
found = True found = True
hamlet_array_slow = [] hamlet_array_slow = []
for ind, line in enumerate(text): for ind, line in enumerate(text):
for i in range(len(line)): for i in range(len(line)):
found = True found = True
for j in range(len(HAMLET)): for j in range(len(HAMLET)):
if line[i + j] != HAMLET[j] and line[i + j] != HAMLET[j].capitalize(): if line[i + j] != HAMLET[j]:
found = False found = False
break break
if found: if found:
# print(ind + 1, ":", line[i:], end="") print(ind + 1, ":", line, end="")
hamlet_array_slow.append(ind + 1) hamlet_array_slow.append(ind + 1)
break break
# print(len(phrase_array_slow))
# print(*hamlet_array_slow, sep="\n")
print(time.time() - start_time)
# time this function
start_time = time.time()
hamlet_array_fast = []
for ind, line in enumerate(text):
if HAMLET in line:
hamlet_array_fast.append(ind + 1)
print(time.time() - start_time)

View File

@ -44,8 +44,7 @@ for ind, line in enumerate(text):
found = find_me() found = find_me()
if found: if found:
print(ind + 1, ":", line[i:], end="") print(ind + 1, ":", line, end="")
phrase_array_slow.append(ind + 1) phrase_array_slow.append(ind + 1)
break break
# print(len(phrase_array_slow))
# print(*phrase_array_slow, sep="\n")

File diff suppressed because one or more lines are too long

49
TaskA03/run.py Normal file
View File

@ -0,0 +1,49 @@
import os
NUMBER_OF_INVOICES = 10
DIR = os.path.dirname(__file__)
PHRASE = "19** r."
DIGITS = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"]
def join_path(filename: str) -> str:
return os.path.join(DIR, filename)
with open(
join_path("polish_wiki_excerpt.in"), "r", newline="", encoding="utf8"
) as file:
text = file.readlines()
def in_set(letter, set):
for i in set:
if i == letter:
return True
return False
def find_me():
for j in range(len(PHRASE)):
if PHRASE[j] == "*" and in_set(line[i + j], DIGITS):
continue
if line[i + j] != PHRASE[j] and line[i + j] != PHRASE[j].capitalize():
return False
return True
found = True
phrase_array_slow = []
for ind, line in enumerate(text):
for i in range(len(line)):
found = True
found = find_me()
if found:
print(ind + 1, ":", line, end="")
phrase_array_slow.append(ind + 1)
break
# print(len(phrase_array_slow))

File diff suppressed because one or more lines are too long

44
TaskA04/run.py Normal file
View File

@ -0,0 +1,44 @@
import numbers
import os
DIR = os.path.dirname(__file__)
DIGITS = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"]
def join_path(filename: str) -> str:
return os.path.join(DIR, filename)
def in_set(letter, set) -> bool:
for i in set:
if i == letter:
return True
return False
with open(
join_path("polish_wiki_excerpt.in"), "r", newline="", encoding="utf8"
) as file:
text = file.readlines()
numbers = []
for ind, line in enumerate(text):
numbers_line = []
i = 0
while i < len(line):
number = []
if in_set(line[i], DIGITS):
number.append(line[i])
for j in range(i + 1, len(line)):
if line[j].isdigit():
number.append(line[j])
else:
i += len(number) - 1
break
numbers_line.append(int("".join(number)))
i += 1
if len(numbers_line) != 0:
print(*numbers_line, sep=" ")
numbers.append(numbers_line)
# print(len(phrase_array_slow))