From 2a0cc89c060f089dfdf7cad82f16100692a0b730 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20Obr=C4=99bski?= Date: Tue, 10 Dec 2019 17:29:48 +0100 Subject: [PATCH 01/12] Poprawiony medium.exp --- TaskB04/medium.exp | 1 + 1 file changed, 1 insertion(+) diff --git a/TaskB04/medium.exp b/TaskB04/medium.exp index eaf0309..30d3540 100644 --- a/TaskB04/medium.exp +++ b/TaskB04/medium.exp @@ -1,3 +1,4 @@ +a abace abadance abadanek From 9c30cf53ba96a2535128726f563822d6138d459e Mon Sep 17 00:00:00 2001 From: Filip Gralinski Date: Wed, 8 Jan 2020 22:53:08 +0100 Subject: [PATCH 02/12] C- tasks --- TaskC00/description.txt | 14 ++++++++++++++ TaskC00/test.exp | 13 +++++++++++++ TaskC00/test.in | 12 ++++++++++++ TaskC01/description.txt | 15 +++++++++++++++ TaskC01/test.exp | 11 +++++++++++ TaskC01/test.in | 10 ++++++++++ TaskC02/description.txt | 29 +++++++++++++++++++++++++++++ TaskC02/test.exp | 8 ++++++++ TaskC02/test.in | 7 +++++++ TaskC03/description.txt | 25 +++++++++++++++++++++++++ TaskC03/test.exp | 13 +++++++++++++ TaskC03/test.in | 12 ++++++++++++ TaskC04/description.txt | 32 ++++++++++++++++++++++++++++++++ TaskC04/test.exp | 12 ++++++++++++ TaskC04/test.in | 11 +++++++++++ TaskC05/description.txt | 29 +++++++++++++++++++++++++++++ TaskC05/test.exp | 13 +++++++++++++ TaskC05/test.in | 12 ++++++++++++ TaskC06/description.txt | 33 +++++++++++++++++++++++++++++++++ TaskC06/test.exp | 7 +++++++ TaskC06/test.in | 6 ++++++ 21 files changed, 324 insertions(+) create mode 100644 TaskC00/description.txt create mode 100644 TaskC00/test.exp create mode 100644 TaskC00/test.in create mode 100644 TaskC01/description.txt create mode 100644 TaskC01/test.exp create mode 100644 TaskC01/test.in create mode 100644 TaskC02/description.txt create mode 100644 TaskC02/test.exp create mode 100644 TaskC02/test.in create mode 100644 TaskC03/description.txt create mode 100644 TaskC03/test.exp create mode 100644 TaskC03/test.in create mode 100644 TaskC04/description.txt create mode 100644 TaskC04/test.exp create mode 100644 TaskC04/test.in create mode 100644 TaskC05/description.txt create mode 100644 TaskC05/test.exp create mode 100644 TaskC05/test.in create mode 100644 TaskC06/description.txt create mode 100644 TaskC06/test.exp create mode 100644 TaskC06/test.in diff --git a/TaskC00/description.txt b/TaskC00/description.txt new file mode 100644 index 0000000..8a62545 --- /dev/null +++ b/TaskC00/description.txt @@ -0,0 +1,14 @@ +Zamiana cyfr z ułamkami na słowa +================================ + +Napisać gramatykę thraxową, która zamienia liczby z zakresu +od -999,999 od 999,999 na postać słowną. + +Zakładamy, że liczby nie mają zer nieznaczących. + +UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu +dzieli się przez 7 z resztą 0. + +POINTS: 14 +DEADLINE: 2019-01-31 23:59 +REMAINDER: 0/7 diff --git a/TaskC00/test.exp b/TaskC00/test.exp new file mode 100644 index 0000000..a4cd366 --- /dev/null +++ b/TaskC00/test.exp @@ -0,0 +1,13 @@ +Input string: Output string: minus dziewięćset dziewięćdziesiąt dziewięć i dziewięćset dziewięćdziesiąt dziewięć tysięcznych +Input string: Output string: dziewięćset dziewięćdziesiąt dziewięć i dziewięćset dziewięćdziesiąt jeden tysięcznych +Input string: Output string: trzy i jedna dziesiąta +Input string: Output string: dwanaście i sześćdziesiąt siedem setnych +Input string: Output string: minus trzydzieści +Input string: Output string: minus trzydzieści pięć i sto dwadzieścia jeden tysięcznych +Input string: Output string: jedna dziesiąta +Input string: Output string: jedna setna +Input string: Output string: jedna tysięczna +Input string: Output string: zero +Input string: Output string: osiem i jedna setna +Input string: Output string: osiem i pięć setnych +Input string: \ No newline at end of file diff --git a/TaskC00/test.in b/TaskC00/test.in new file mode 100644 index 0000000..cecf938 --- /dev/null +++ b/TaskC00/test.in @@ -0,0 +1,12 @@ +-999,999 +999,991 +3,1 +12,67 +-30 +-35,121 +0,1 +0,01 +0,001 +0 +8,01 +8,05 diff --git a/TaskC01/description.txt b/TaskC01/description.txt new file mode 100644 index 0000000..05b923c --- /dev/null +++ b/TaskC01/description.txt @@ -0,0 +1,15 @@ +Zamiana cyfr na słowa polskie +============================= + +Napisać gramatykę thraxową, która zamienia liczby całkowite pisane +cyframi z zakresu od -999999999 do 999999999 na postać słowną (po +polsku). + +Zakładamy, że liczby nie mają zer nieznaczących. + +UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu +dzieli się przez 7 z resztą 1. + +POINTS: 14 +DEADLINE: 2019-01-31 23:59 +REMAINDER: 1/7 diff --git a/TaskC01/test.exp b/TaskC01/test.exp new file mode 100644 index 0000000..6af55e3 --- /dev/null +++ b/TaskC01/test.exp @@ -0,0 +1,11 @@ +Input string: Output string: dwanaście tysięcy trzysta czterdzieści pięć +Input string: Output string: zero +Input string: Output string: minus dziewięćset dziewięćdziesiąt dziewięć milionów dziewięćset dziewięćdziesiąt dziewięć tysięcy dziewięćset dziewięćdziesiąt dziewięć +Input string: Output string: tysiąc osiemset dziewięć +Input string: Output string: minus dwanaście +Input string: Output string: trzy tysiące dziewięćdziesiąt osiem +Input string: Output string: trzy miliony +Input string: Output string: osiem +Input string: Output string: dwadzieścia dwa +Input string: Output string: milion jeden +Input string: \ No newline at end of file diff --git a/TaskC01/test.in b/TaskC01/test.in new file mode 100644 index 0000000..e659f5b --- /dev/null +++ b/TaskC01/test.in @@ -0,0 +1,10 @@ +12345 +0 +-999999999 +1809 +-12 +3098 +3000000 +8 +22 +1000001 diff --git a/TaskC02/description.txt b/TaskC02/description.txt new file mode 100644 index 0000000..4a7a09d --- /dev/null +++ b/TaskC02/description.txt @@ -0,0 +1,29 @@ +Podział na sylaby +================= + +Napisać gramatykę thraxową, która dzieli wyraz na sylaby. Zakładamy, +że na wejściu podawane polskie wyrazy (tj. ciągi małych liter, +włącznie z polskimi znakami diakrytycznymi). Należy zaznaczyć podział +na sylaby (przez dodanie spacji). + +Założenia: +- preferujemy taki podział, by sylaba kończyła się i zaczynała spółgłoską, + np. "parter" dzielimy na "par ter", +- w przypadku zbitek więcej niż dwóch spółgłosek, pierwsza spółgłoska + powinna zostać włączona do lewej sylaby, pozostałe — do prawej sylaby + np. "bartnik" dzielimy na "bar tnik", +- pojedynczą spółgłoską dołączamy do prawej sylaby, +- pamiętamy przy tym, że niektóre głoski oddajemy za pomocą dwuznaków, + np. "szczebrzeszyn" dzielimy na "szczeb rze szyn", +- pamiętamy, że zbitki typu "ia" to jedna samogłoska. + +(Powyższe założenia to oczywiście tylko przybliżenie poprawnej definicji + sylaby). + + +UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu +dzieli się przez 7 z resztą 2. + +POINTS: 14 +DEADLINE: 2019-01-31 23:59 +REMAINDER: 2/7 diff --git a/TaskC02/test.exp b/TaskC02/test.exp new file mode 100644 index 0000000..f3fef8c --- /dev/null +++ b/TaskC02/test.exp @@ -0,0 +1,8 @@ +Input string: Output string: par ter +Input string: Output string: bar ter +Input string: Output string: bar tnik +Input string: Output string: szczeb rze szyn +Input string: Output string: most +Input string: Output string: ma nia kal nie +Input string: Output string: a pos tro ficz ny +Input string: \ No newline at end of file diff --git a/TaskC02/test.in b/TaskC02/test.in new file mode 100644 index 0000000..c00679a --- /dev/null +++ b/TaskC02/test.in @@ -0,0 +1,7 @@ +parter +barter +bartnik +szczebrzeszyn +most +maniakalnie +apostroficzny diff --git a/TaskC03/description.txt b/TaskC03/description.txt new file mode 100644 index 0000000..238ba45 --- /dev/null +++ b/TaskC03/description.txt @@ -0,0 +1,25 @@ +Korektor gramatyczny +==================== + +Napisać gramatykę thraxową, która dokona prostej korekty gramatycznej, tj.: + +* wstawi brakujący przecinek przed formami zaimków "jaki" i "który", +* ... z uwzględnieniem przyimków (także przyimka złożonego "odnośnie do") + — wtedy przecinek powinien być przed przyimkiem, +* zamieni "odnośnie" (bez "do") na "odnośnie do", +* zamieni "w każdym bądź razie" na "w każdym razie", +* zamieni formy typu "12 marzec" (nazwa miesiąca w mianowniku) na "12 + marca" (nazwa miesiąc w dopełniaczu). + +Należy uwzględnić też przypadki, gdy powyższe konstrukcje pisane są +wielką literą (na początku zdania). + +Zakładamy, że wejściowy tekst może zawierać duże i wielkie litery +polskiego alfabetu, spacje, przecinki, kropki i znaki zapytania. + +UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu +dzieli się przez 7 z resztą 3. + +POINTS: 14 +DEADLINE: 2019-01-31 23:59 +REMAINDER: 3/7 diff --git a/TaskC03/test.exp b/TaskC03/test.exp new file mode 100644 index 0000000..bcdc2b0 --- /dev/null +++ b/TaskC03/test.exp @@ -0,0 +1,13 @@ +Input string: Output string: Jaki człowiek wie, w którym roku urodził się Mozart? +Input string: Output string: Jaki człowiek wie, w którym roku urodził się Mozart? +Input string: Output string: Powiedz, jaki człowiek wie, w którym roku urodził się Mozart? +Input string: Output string: sprawa, odnośnie do której się pytam +Input string: Output string: Odnośnie do tego +Input string: Output string: do tyłu, tak zrobili wtedy +Input string: Output string: w każdym razie, człowiek, który grał na pianinie +Input string: Output string: cofnęliby się 31 stycznia +Input string: Output string: to był 1 października 2012 +Input string: Output string: to był 2 października 2012 +Input string: Output string: W każdym razie, stało się to 28 lutego +Input string: Output string: odnośnie do wydarzeń, które przypadły na 29 września +Input string: \ No newline at end of file diff --git a/TaskC03/test.in b/TaskC03/test.in new file mode 100644 index 0000000..c9a7811 --- /dev/null +++ b/TaskC03/test.in @@ -0,0 +1,12 @@ +Jaki człowiek wie, w którym roku urodził się Mozart? +Jaki człowiek wie w którym roku urodził się Mozart? +Powiedz jaki człowiek wie w którym roku urodził się Mozart? +sprawa odnośnie której się pytam +Odnośnie tego +do tyłu, tak zrobili wtedy +w każdym bądź razie, człowiek który grał na pianinie +cofnęliby się 31 styczeń +to był 1 październik 2012 +to był 2 październik 2012 +W każdym bądź razie, stało się to 28 luty +odnośnie wydarzeń które przypadły na 29 wrzesień diff --git a/TaskC04/description.txt b/TaskC04/description.txt new file mode 100644 index 0000000..95e99e2 --- /dev/null +++ b/TaskC04/description.txt @@ -0,0 +1,32 @@ +Wymowa +====== + +Napisać gramatykę thraxową, która przekształca tekst polski do jego +zapisu "fonetycznego", tj.: + +* "rz" na "ż" (chyba że po "t" i "p" — wówczas na "sz"), "ch" na "h", "ó" na "u", +* wyjątkowo w formach wyrazu "marznąć" nie zamieniamy "rz" na "ż", +* "ę" na "en", chyba że na końcu wyrazu lub przed "ł" — wówczas jako "e" +" "ą" na "on", chyba że na końcu wyrazu — wówczas zostaje "ą", +* oddajemy rzeczywistą wymowę na końcu bezdźwięcznych spółgłosek, + np. "g" na końcu wyrazu zamienia na "k" +* w przypadku zbitek "i" z samogłoską zmiękczamy poprzedzającą + samogłoskę (np. "siano" na "śano"), w przeciwnym razie + zamieniamy "i" na "j" ("bieda" na "bjeda"), +* zbitki typu "ci" zamieniamy na "ć", np. "zima" na "źima", wyjątki: + "sinus" i formy przymiotnika "silikonowy", +* wszystkie wielkie litery należy zamienić na małe, +* znaki interpunkcyjne należy usunąć. + +(Oczywiście to tylko przybliżenie rzeczywistej transkrypcji +fonetycznej). + +Zakładamy, że wejściowy tekst może zawierać duże i wielkie litery +polskiego alfabetu, spacje, przecinki, kropki i znaki zapytania. + +UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu +dzieli się przez 7 z resztą 4. + +POINTS: 14 +DEADLINE: 2019-01-31 23:59 +REMAINDER: 4/7 diff --git a/TaskC04/test.exp b/TaskC04/test.exp new file mode 100644 index 0000000..1e018f7 --- /dev/null +++ b/TaskC04/test.exp @@ -0,0 +1,12 @@ +Input string: Output string: ala ma kota +Input string: Output string: być albo ńe być oto jest pytańe +Input string: Output string: żeby hrońić informacje zainteresowane państwa podjeły ruwńeż dźałańa psyhologiczne +Input string: Output string: marzne bo ńe mjeli silikonu +Input string: Output string: pjorun kulisty wyglondem pszypomina śwjetlistą kule o średńicy od kilku do kilkudźeśenću centymetruf +Input string: Output string: renką +Input string: Output string: pewnego dńa zrozumjesz że w żyću jest tylko jeden uńiwersalny jenzyk śiła i matematyka +Input string: Output string: pszesada dwje laski dynamitu to by była pszesada +Input string: Output string: ruk rogi +Input string: Output string: rico żadnyh testuf jondrowyh w baźe +Input string: Output string: ńe dawać na sztywno +Input string: \ No newline at end of file diff --git a/TaskC04/test.in b/TaskC04/test.in new file mode 100644 index 0000000..1b4264c --- /dev/null +++ b/TaskC04/test.in @@ -0,0 +1,11 @@ +Ala ma kota. +Być albo nie być, oto jest pytanie. +Żeby chronić informacje zainteresowane państwa podjęły również działania psychologiczne. +Marznę, bo nie mieli silikonu. +Piorun kulisty wyglądem przypomina świetlistą kulę o średnicy od kilku do kilkudziesięciu centymetrów. +ręką +Pewnego dnia zrozumiesz, że w życiu jest tylko jeden uniwersalny język siła. I matematyka. +Przesada? Dwie laski dynamitu to by była przesada. +róg rogi +Rico, żadnych testów jądrowych w bazie! +nie dawać na sztywno diff --git a/TaskC05/description.txt b/TaskC05/description.txt new file mode 100644 index 0000000..121c979 --- /dev/null +++ b/TaskC05/description.txt @@ -0,0 +1,29 @@ +Rozwijanie skrótów +================== + +Napisać gramatykę thraxową, która rozwija skróty poprzedzające +imiona/nazwiska, tj.: "prof.", "dr", "hab.", "ks.", "mgr", +"inż.", także formy typu "dra", "mgrowi". Skróty "dr" i "mgr" +mogą być opcjonalnie zakończone kropką. + + +Domyślnie należy zamieniać skróty na formę podstawową (mianownik), +chyba że: + +* skróty typu "dra" i "mgrowi" należy rozwijać do odpowiednich form (np. "doktora", "magistrowi"), + także towarzyszące im inne skróty; +* możemy odgadnąć formę po imieniu następującym po skrócie lub ciągu skrótów, + należy uwzględnić przynajmniej 20 częstych imion męskich +* możemy odgadnąć formę po nazwisku występującym po skrócie lub ciągu skrótów lub jeden wyraz dalej + uwzględniamy nazwiska "Nowak", "Kaczmarek" oraz nazwiska zakończone na "-ski", "-cki", "-owicz"; +* możemy odgadnąć forme po poprzedzającym przyimku. + +Zakładamy, że wejściowy tekst może zawierać duże i wielkie litery +polskiego alfabetu, spacje, przecinki, kropki i znaki zapytania. + +UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu +dzieli się przez 7 z resztą 5. + +POINTS: 14 +DEADLINE: 2019-01-31 23:59 +REMAINDER: 5/7 diff --git a/TaskC05/test.exp b/TaskC05/test.exp new file mode 100644 index 0000000..b4f296e --- /dev/null +++ b/TaskC05/test.exp @@ -0,0 +1,13 @@ +Input string: Output string: Widzę księdza profesora Mateusza Kusia, jak rozmawia z doktorem inżynierem jak mu tam było. +Input string: Output string: profesor doktor habilitowany ksiądz magister inżynier +Input string: Output string: profesor habilitowany hahahaha +Input string: Output string: od profesora habilitowanego hahahaha +Input string: Output string: doktor Michał Rrrrrrrr +Input string: Output string: doktora Michała Rrrrrrrr +Input string: Output string: doktor Michał Rrrrrrrr +Input string: Output string: doktora Michała Rrrrrrrr +Input string: Output string: profesor Pasem Ratunkowym +Input string: Output string: profesorem Pasem Kaczmarkiem +Input string: Output string: doktor habilitowany Rups Koźlarski doktora habilitowanego Rups Koźlarskiego +Input string: Output string: dramat wyprof. +Input string: \ No newline at end of file diff --git a/TaskC05/test.in b/TaskC05/test.in new file mode 100644 index 0000000..22def43 --- /dev/null +++ b/TaskC05/test.in @@ -0,0 +1,12 @@ +Widzę ks. prof. Mateusza Kusia, jak rozmawia z drem inż. jak mu tam było. +prof. dr hab. ks. mgr inż. +prof. hab. hahahaha +od prof. hab. hahahaha +dr Michał Rrrrrrrr +dr Michała Rrrrrrrr +dr. Michał Rrrrrrrr +dr. Michała Rrrrrrrr +prof. Pasem Ratunkowym +prof. Pasem Kaczmarkiem +dr hab. Rups Koźlarski dr hab. Rups Koźlarskiego +dramat wyprof. diff --git a/TaskC06/description.txt b/TaskC06/description.txt new file mode 100644 index 0000000..b41102c --- /dev/null +++ b/TaskC06/description.txt @@ -0,0 +1,33 @@ +Tłumacz polsko-poznański +======================== + +Napisać gramatykę thraxową, która przekształca tekst polski na wersję poznańską +Uwzględnić zamiany (wraz z formami fleksyjnymi): + +* "tramwaj"/"bimba", +* "pieniądze"/"bejmy", +* "ludzie"/"wiaruchna", +* "zamknąć na klucz"/"zakluczyć", +* "nacisnąć"/"nadusić", +* "czerwona kapusta"/"modra kapusta", + +W co trzeci wyraz (zaczynając od początku) należy wstawić wyraz "tej". + +Przy zamianie rodzaju/liczby (np. "tramwaj" na "bimba") należy zmienić: + +* formę przymiotnika poprzedzającą wyraz (uwzględniamy regularne + przymiotniki zakończone na "-y"), +* formę przymiotnika następującego po wyrazie (uwzględniamy regularne + przymiotniki zakończone na "-y"), +* formę czasownika następującego po mianowniku lub jeden wyraz dalej + (uwzględniamy regularne formy czasu przeszłego). + +Zakładamy, że wejściowy tekst może zawierać duże i wielkie litery +polskiego alfabetu i spacje. + +UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu +dzieli się przez 7 z resztą 6. + +POINTS: 14 +DEADLINE: 2019-01-31 23:59 +REMAINDER: 6/7 diff --git a/TaskC06/test.exp b/TaskC06/test.exp new file mode 100644 index 0000000..1214163 --- /dev/null +++ b/TaskC06/test.exp @@ -0,0 +1,7 @@ +Input string: Output string: tej Czerwona bimba tej przyjechała i tej zielony autobus tej odjechał +Input string: Output string: tej Wiaruchna zakluczyła tej modrą kapustę tej +Input string: Output string: tej Ci dziwna tej wiaruchna to tej chyba +Input string: Output string: tej Bimbą jechał tej i nadusił tej przycisk +Input string: Output string: tej Bejmy były tej zakluczone +Input string: Output string: tej Bimba dzisiaj tej odblablowała +Input string: \ No newline at end of file diff --git a/TaskC06/test.in b/TaskC06/test.in new file mode 100644 index 0000000..25df72a --- /dev/null +++ b/TaskC06/test.in @@ -0,0 +1,6 @@ +Czerwony tramwaj przyjechał i zielony autobus odjechał +Ludzie zamknęli na klucz czerwoną kapustę +Ci dziwni ludzie to chyba +Tramwajem jechał i nacisnął przycisk +Pieniądze były zamknięte na klucz +Tramwaj dzisiaj odblablował From d05cedbd87899294d089d42d8ca0ed945d0c628b Mon Sep 17 00:00:00 2001 From: Filip Gralinski Date: Wed, 8 Jan 2020 22:53:31 +0100 Subject: [PATCH 03/12] X07 --- TaskX07/description.txt | 12 ++++++++++++ TaskX07/test.exp | 11 +++++++++++ TaskX07/test.in | 10 ++++++++++ 3 files changed, 33 insertions(+) create mode 100644 TaskX07/description.txt create mode 100644 TaskX07/test.exp create mode 100644 TaskX07/test.in diff --git a/TaskX07/description.txt b/TaskX07/description.txt new file mode 100644 index 0000000..791fc54 --- /dev/null +++ b/TaskX07/description.txt @@ -0,0 +1,12 @@ +Napisz gramatykę Thraxową, która do liczby nieujemnej (w zapisie +dziesiętnym) dodaje 4. + +Podpowiedzi: +- prościej zdefiniować automat odwrotny, a potem użyć funkcji Reverse +- rozbić na 2 przypadki: dodawanie z przeniesieniem i bez przeniesienia +- uwagi na ciąg dziewiątek przy przeniesieniu! +- czasami trzeba wydłużyć liczbę o jedną cyfrę, transduktor + "" : "1" dodaje jedynkę na końcu. + +POINTS: 2 +DEADLINE: 2018-12-21 23:59 diff --git a/TaskX07/test.exp b/TaskX07/test.exp new file mode 100644 index 0000000..47a0832 --- /dev/null +++ b/TaskX07/test.exp @@ -0,0 +1,11 @@ +Input string: Output string: 4 +Input string: Output string: 335 +Input string: Output string: 786 +Input string: Output string: 7 +Input string: Output string: 99998 +Input string: Output string: 55559 +Input string: Output string: 10000 +Input string: Output string: 387899881 +Input string: Output string: 40002 +Input string: Output string: 10013 +Input string: \ No newline at end of file diff --git a/TaskX07/test.in b/TaskX07/test.in new file mode 100644 index 0000000..b82bab1 --- /dev/null +++ b/TaskX07/test.in @@ -0,0 +1,10 @@ +0 +331 +782 +3 +99994 +55555 +9996 +387899877 +39998 +10009 From 9ade3ca379fe4fceec893685862f7c4f306855bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Grali=C5=84ski?= Date: Thu, 9 Jan 2020 10:43:39 +0100 Subject: [PATCH 04/12] Up --- TaskC00/description.txt | 2 +- TaskC01/description.txt | 2 +- TaskC02/description.txt | 2 +- TaskC03/description.txt | 2 +- TaskC04/description.txt | 2 +- TaskC05/description.txt | 2 +- TaskC06/description.txt | 2 +- TaskX07/description.txt | 15 ++++++++------- blend.sh | 2 +- 9 files changed, 16 insertions(+), 15 deletions(-) diff --git a/TaskC00/description.txt b/TaskC00/description.txt index 8a62545..878a200 100644 --- a/TaskC00/description.txt +++ b/TaskC00/description.txt @@ -10,5 +10,5 @@ UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu dzieli się przez 7 z resztą 0. POINTS: 14 -DEADLINE: 2019-01-31 23:59 +DEADLINE: 2020-01-28 23:59 REMAINDER: 0/7 diff --git a/TaskC01/description.txt b/TaskC01/description.txt index 05b923c..f120efe 100644 --- a/TaskC01/description.txt +++ b/TaskC01/description.txt @@ -11,5 +11,5 @@ UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu dzieli się przez 7 z resztą 1. POINTS: 14 -DEADLINE: 2019-01-31 23:59 +DEADLINE: 2020-01-28 23:59 REMAINDER: 1/7 diff --git a/TaskC02/description.txt b/TaskC02/description.txt index 4a7a09d..691f472 100644 --- a/TaskC02/description.txt +++ b/TaskC02/description.txt @@ -25,5 +25,5 @@ UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu dzieli się przez 7 z resztą 2. POINTS: 14 -DEADLINE: 2019-01-31 23:59 +DEADLINE: 2020-01-28 23:59 REMAINDER: 2/7 diff --git a/TaskC03/description.txt b/TaskC03/description.txt index 238ba45..1fd0e47 100644 --- a/TaskC03/description.txt +++ b/TaskC03/description.txt @@ -21,5 +21,5 @@ UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu dzieli się przez 7 z resztą 3. POINTS: 14 -DEADLINE: 2019-01-31 23:59 +DEADLINE: 2020-01-28 23:59 REMAINDER: 3/7 diff --git a/TaskC04/description.txt b/TaskC04/description.txt index 95e99e2..617da75 100644 --- a/TaskC04/description.txt +++ b/TaskC04/description.txt @@ -28,5 +28,5 @@ UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu dzieli się przez 7 z resztą 4. POINTS: 14 -DEADLINE: 2019-01-31 23:59 +DEADLINE: 2020-01-28 23:59 REMAINDER: 4/7 diff --git a/TaskC05/description.txt b/TaskC05/description.txt index 121c979..5c9392c 100644 --- a/TaskC05/description.txt +++ b/TaskC05/description.txt @@ -25,5 +25,5 @@ UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu dzieli się przez 7 z resztą 5. POINTS: 14 -DEADLINE: 2019-01-31 23:59 +DEADLINE: 2020-01-28 23:59 REMAINDER: 5/7 diff --git a/TaskC06/description.txt b/TaskC06/description.txt index b41102c..0e20228 100644 --- a/TaskC06/description.txt +++ b/TaskC06/description.txt @@ -29,5 +29,5 @@ UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu dzieli się przez 7 z resztą 6. POINTS: 14 -DEADLINE: 2019-01-31 23:59 +DEADLINE: 2020-01-28 23:59 REMAINDER: 6/7 diff --git a/TaskX07/description.txt b/TaskX07/description.txt index 791fc54..8d485fa 100644 --- a/TaskX07/description.txt +++ b/TaskX07/description.txt @@ -1,12 +1,13 @@ +Write a Thrax grammar that adds 4 to a non-negative integer (in decimal +notation). Napisz gramatykę Thraxową, która do liczby nieujemnej (w zapisie dziesiętnym) dodaje 4. -Podpowiedzi: -- prościej zdefiniować automat odwrotny, a potem użyć funkcji Reverse -- rozbić na 2 przypadki: dodawanie z przeniesieniem i bez przeniesienia -- uwagi na ciąg dziewiątek przy przeniesieniu! -- czasami trzeba wydłużyć liczbę o jedną cyfrę, transduktor - "" : "1" dodaje jedynkę na końcu. +Hints: +- easier to define reverted automaton and then use Reverse +- consider two cases: adding with carry and without +- be careful with sequences of nines +- sometimes the result will one digit longer POINTS: 2 -DEADLINE: 2018-12-21 23:59 +DEADLINE: 2020-01-20 18:50 diff --git a/blend.sh b/blend.sh index fbb6c8f..738bc75 100755 --- a/blend.sh +++ b/blend.sh @@ -19,7 +19,7 @@ cp "${PREFIX}/count-points.pl" arena/ cp "${PREFIX}/overrides.txt" arena/ cp "${PREFIX}/Makefile" arena/ -for TX in X01 X02 X03 X04 X05 X06 B00 B01 B02 B03 B04 B05 B06 E01 E02 E03 E04 # X05 X06 X07 X08 X09 X10 B03 B04 X10 +for TX in X01 X02 X03 X04 X05 X06 X07 B00 B01 B02 B03 B04 B05 B06 C00 C01 C02 C03 C04 C05 C06 E01 E02 E03 E04 # X05 X06 X07 X08 X09 X10 B03 B04 X10 do mkdir -p arena/Task$TX done From 77e74e574165b1253992da60952c01b817dc8e8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Grali=C5=84ski?= Date: Thu, 9 Jan 2020 10:54:46 +0100 Subject: [PATCH 05/12] Move deadline --- TaskB03/description.txt | 2 +- TaskB04/description.txt | 2 +- TaskB05/description.txt | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/TaskB03/description.txt b/TaskB03/description.txt index adf446c..9741109 100644 --- a/TaskB03/description.txt +++ b/TaskB03/description.txt @@ -53,5 +53,5 @@ NOTE 2. Task only for students whose student index number ("numer indeksu") is divisible by 3 with a remainder of 0 POINTS: 14 -DEADLINE: 2019-12-16 23:59 +DEADLINE: 2020-01-11 23:59 REMAINDER: 0/3 diff --git a/TaskB04/description.txt b/TaskB04/description.txt index 958cffd..cf72383 100644 --- a/TaskB04/description.txt +++ b/TaskB04/description.txt @@ -25,5 +25,5 @@ indeksu") is divisible by 3 with a remainder of 1 NOTE 3. You can add `LANG=C sort` to your Bash wrapper for the write sort. POINTS: 14 -DEADLINE: 2019-12-16 23:59 +DEADLINE: 2020-01-11 23:59 REMAINDER: 1/3 diff --git a/TaskB05/description.txt b/TaskB05/description.txt index 39532b8..534d32b 100644 --- a/TaskB05/description.txt +++ b/TaskB05/description.txt @@ -25,5 +25,5 @@ NOTE 2. Task only for students whose student index number ("numer indeksu") is divisible by 3 with a remainder of 2. POINTS: 14 -DEADLINE: 2019-12-16 23:59 +DEADLINE: 2020-01-11 23:59 REMAINDER: 2/3 From e436e9c854eabdee326376f7a19422a730d8313f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Grali=C5=84ski?= Date: Thu, 9 Jan 2020 11:00:11 +0100 Subject: [PATCH 06/12] C tasks not for Erasmus students --- count-points.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/count-points.pl b/count-points.pl index c53bfd3..f9b9a62 100755 --- a/count-points.pl +++ b/count-points.pl @@ -165,7 +165,7 @@ sub check_if_the_right_task { return 0 if $task_id =~ m{^TaskE} and not is_estudent($student_id); - return 0 if $task_id =~ m{^TaskA} and is_estudent($student_id); + return 0 if $task_id =~ m{^Task[AC]} and is_estudent($student_id); return 1; } From 18242a6678fc02dbff11cf20dae87a67d79886df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Grali=C5=84ski?= Date: Thu, 9 Jan 2020 11:29:38 +0100 Subject: [PATCH 07/12] Add E05 --- TaskE05/description.txt | 21 +++++++++++++++++++++ TaskE05/test.exp | 8 ++++++++ TaskE05/test.in | 7 +++++++ blend.sh | 2 +- 4 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 TaskE05/description.txt create mode 100644 TaskE05/test.exp create mode 100644 TaskE05/test.in diff --git a/TaskE05/description.txt b/TaskE05/description.txt new file mode 100644 index 0000000..28dbf83 --- /dev/null +++ b/TaskE05/description.txt @@ -0,0 +1,21 @@ +Text normalization for a TTS +============================ + +The task is to write a Thrax grammar for normalizing text for a +text-to-speech system, i.e. the text should be converted to a form +closer to speech (but without phonetic transcription). + +For instance, "I bought 21 books from prof. Smith" should +be transformed into "i bought twenty-one books from professor smith" + +You should: + +- convert numbers 0-99 into words +- convert Roman numbers I-X into adjectives (the first, the second, etc.) +- expand abbreviations: "e.g." ("for example"), , "prof." ("professor"), "dr." ("doctor"), + "p." ("page"), "pp." ("pages") +- remove punctuations (except for hyphen) +- lower-case everything + +POINTS: 10 +DEADLINE: 2020-01-28 23:59 diff --git a/TaskE05/test.exp b/TaskE05/test.exp new file mode 100644 index 0000000..f38a27d --- /dev/null +++ b/TaskE05/test.exp @@ -0,0 +1,8 @@ +Input string: Output string: i bought twenty-one books from professor smith +Input string: Output string: doctor +Input string: Output string: for example world war the second and other things +Input string: Output string: ninety-nine helium-oxygen balloons +Input string: Output string: four four four +Input string: Output string: nothing to normalize +Input string: Output string: thirteen +Input string: \ No newline at end of file diff --git a/TaskE05/test.in b/TaskE05/test.in new file mode 100644 index 0000000..7c5d370 --- /dev/null +++ b/TaskE05/test.in @@ -0,0 +1,7 @@ +I bought 21 books from prof. Smith! +dr. +E.g. World War II, and other things. +99 helium-oxygen balloons +4 4 4 +nothing to normalize +13 diff --git a/blend.sh b/blend.sh index 738bc75..e69bb8c 100755 --- a/blend.sh +++ b/blend.sh @@ -19,7 +19,7 @@ cp "${PREFIX}/count-points.pl" arena/ cp "${PREFIX}/overrides.txt" arena/ cp "${PREFIX}/Makefile" arena/ -for TX in X01 X02 X03 X04 X05 X06 X07 B00 B01 B02 B03 B04 B05 B06 C00 C01 C02 C03 C04 C05 C06 E01 E02 E03 E04 # X05 X06 X07 X08 X09 X10 B03 B04 X10 +for TX in X01 X02 X03 X04 X05 X06 X07 B00 B01 B02 B03 B04 B05 B06 C00 C01 C02 C03 C04 C05 C06 E01 E02 E03 E04 E05 # X05 X06 X07 X08 X09 X10 B03 B04 X10 do mkdir -p arena/Task$TX done From 7fcae2104369844f9b4f61c30364f0d213f69512 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Grali=C5=84ski?= Date: Thu, 9 Jan 2020 14:23:01 +0100 Subject: [PATCH 08/12] Add overrides --- overrides.txt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/overrides.txt b/overrides.txt index a3a14f7..217da90 100644 --- a/overrides.txt +++ b/overrides.txt @@ -1 +1,6 @@ 434739 A44 4 manually +442613 B01 8 manually +442613 E01 2 manually +442613 E02 2 manually +442613 E03 2 manually +442613 X06 1 manually From 3083b047ae6a9a94ae0db39c5f0f41571d6df1b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Grali=C5=84ski?= Date: Thu, 9 Jan 2020 15:45:55 +0100 Subject: [PATCH 09/12] Remove Polish text --- TaskX07/description.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/TaskX07/description.txt b/TaskX07/description.txt index 8d485fa..c2fcee7 100644 --- a/TaskX07/description.txt +++ b/TaskX07/description.txt @@ -1,7 +1,5 @@ Write a Thrax grammar that adds 4 to a non-negative integer (in decimal notation). -Napisz gramatykę Thraxową, która do liczby nieujemnej (w zapisie -dziesiętnym) dodaje 4. Hints: - easier to define reverted automaton and then use Reverse From cb2f2560c1d4e15eca59621a8c9ead8227164056 Mon Sep 17 00:00:00 2001 From: Filip Gralinski Date: Mon, 13 Jan 2020 22:32:10 +0100 Subject: [PATCH 10/12] New task --- TaskX08/description.txt | 9 +++++++++ TaskX08/test.exp | 6 ++++++ TaskX08/test.in | 5 +++++ 3 files changed, 20 insertions(+) create mode 100644 TaskX08/description.txt create mode 100644 TaskX08/test.exp create mode 100644 TaskX08/test.in diff --git a/TaskX08/description.txt b/TaskX08/description.txt new file mode 100644 index 0000000..c6cef65 --- /dev/null +++ b/TaskX08/description.txt @@ -0,0 +1,9 @@ +Napisz gramatykę Thraxową, która usuwa wszystkie znaki z wyjątkiem +polskich liter (małych i wielkich) i spacji. Wielkie litery powinny +być zamieniane na małe. + +Podpowiedź: rozwiązanie nie będzie _bardzo_ krótkie, pewne rzeczy +trzeba będzie wyliczyć. + +POINTS: 2 +DEADLINE: 2020-01-20 18:50 diff --git a/TaskX08/test.exp b/TaskX08/test.exp new file mode 100644 index 0000000..95aa656 --- /dev/null +++ b/TaskX08/test.exp @@ -0,0 +1,6 @@ +Input string: Output string: ala ma kota +Input string: Output string: być albo nie być oto jest pytanie +Input string: Output string: przesada dwie laski dynamitu to by była przesada +Input string: Output string: róg rogi +Input string: Output string: rico żadnych testów jądrowych w bazie +Input string: \ No newline at end of file diff --git a/TaskX08/test.in b/TaskX08/test.in new file mode 100644 index 0000000..d365bcd --- /dev/null +++ b/TaskX08/test.in @@ -0,0 +1,5 @@ +Ala ma kota. +Być albo nie być, oto jest pytanie. +Przesada? Dwie laski dynamitu to by była przesada. +róg rogi +Rico, żadnych testów jądrowych w bazie! From 14fbee1531a5518a5c2bd9b5cf5a736c4e5bde71 Mon Sep 17 00:00:00 2001 From: Filip Gralinski Date: Mon, 13 Jan 2020 22:32:32 +0100 Subject: [PATCH 11/12] Fix --- blend.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blend.sh b/blend.sh index e69bb8c..3e6147b 100755 --- a/blend.sh +++ b/blend.sh @@ -19,7 +19,7 @@ cp "${PREFIX}/count-points.pl" arena/ cp "${PREFIX}/overrides.txt" arena/ cp "${PREFIX}/Makefile" arena/ -for TX in X01 X02 X03 X04 X05 X06 X07 B00 B01 B02 B03 B04 B05 B06 C00 C01 C02 C03 C04 C05 C06 E01 E02 E03 E04 E05 # X05 X06 X07 X08 X09 X10 B03 B04 X10 +for TX in X01 X02 X03 X04 X05 X06 X07 X08 B00 B01 B02 B03 B04 B05 B06 C00 C01 C02 C03 C04 C05 C06 E01 E02 E03 E04 E05 # X05 X06 X07 X08 X09 X10 B03 B04 X10 do mkdir -p arena/Task$TX done From 077f7ecf7a43874718d26cc80303523c84c0a358 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Grali=C5=84ski?= Date: Tue, 14 Jan 2020 12:26:41 +0100 Subject: [PATCH 12/12] Overrides --- overrides.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/overrides.txt b/overrides.txt index 217da90..b055aaf 100644 --- a/overrides.txt +++ b/overrides.txt @@ -4,3 +4,6 @@ 442613 E02 2 manually 442613 E03 2 manually 442613 X06 1 manually +434726 A06 2 manually +434726 A26 3 manually +434726 A40 2 manually