Merge branch 'master' of git.wmi.amu.edu.pl:filipg/djfz-2019
This commit is contained in:
commit
05ebbbb5e3
@ -7,7 +7,9 @@ http://poleval2020.nlp.ipipan.waw.pl/challenge/poleval-diachronic-morpho
|
|||||||
|
|
||||||
Also, apart from submitting a solution you're expected to report any
|
Also, apart from submitting a solution you're expected to report any
|
||||||
problems with the web site (including incorrect English, unclear
|
problems with the web site (including incorrect English, unclear
|
||||||
instructions, software errors).
|
instructions, software errors). Please add issues at
|
||||||
|
https://git.wmi.amu.edu.pl/filipg/gonito with label "poleval".
|
||||||
|
(first check whether you're the first to submit a problem).
|
||||||
|
|
||||||
For an account there, please contact Filip Graliński, but do it only
|
For an account there, please contact Filip Graliński, but do it only
|
||||||
when you're sure you'll take part in it — the dataset and instructions
|
when you're sure you'll take part in it — the dataset and instructions
|
||||||
|
@ -18,5 +18,5 @@ NOTE: Task only for students whose student index number ("numer
|
|||||||
indeksu") is divisable by 3.
|
indeksu") is divisable by 3.
|
||||||
|
|
||||||
POINTS: 8
|
POINTS: 8
|
||||||
DEADLINE: 2019-12-09 18:45
|
DEADLINE: 2019-12-12 18:45
|
||||||
REMAINDER: 0/3
|
REMAINDER: 0/3
|
||||||
|
@ -4,8 +4,8 @@ Deterministic automaton II
|
|||||||
Read a description of a finite-state automaton in the AT&T format
|
Read a description of a finite-state automaton in the AT&T format
|
||||||
(without weights) from the standard input. Then, read strings from the
|
(without weights) from the standard input. Then, read strings from the
|
||||||
file whose name was given as the first argument. If a string is
|
file whose name was given as the first argument. If a string is
|
||||||
accepted by the automated, write YES, a space and the string on the
|
accepted by the automated, write TRUE, a space and the string on the
|
||||||
standard output, otherwise — write NO, a space and the string.
|
standard output, otherwise — write FALSE, a space and the string.
|
||||||
|
|
||||||
If there is a non-determinism in the automaton, the first transition should be chosen.
|
If there is a non-determinism in the automaton, the first transition should be chosen.
|
||||||
|
|
||||||
@ -16,5 +16,5 @@ NOTE: Task only for students whose student index number ("numer
|
|||||||
indeksu") is divisable by 3 with a remainder of 1
|
indeksu") is divisable by 3 with a remainder of 1
|
||||||
|
|
||||||
POINTS: 8
|
POINTS: 8
|
||||||
DEADLINE: 2019-12-09 18:45
|
DEADLINE: 2019-12-12 18:45
|
||||||
REMAINDER: 1/3
|
REMAINDER: 1/3
|
||||||
|
@ -24,5 +24,5 @@ NOTE: Task only for students whose student index number ("numer
|
|||||||
indeksu") is divisable by 3 with a remainder of 2
|
indeksu") is divisable by 3 with a remainder of 2
|
||||||
|
|
||||||
POINTS: 8
|
POINTS: 8
|
||||||
DEADLINE: 2019-12-09 18:45
|
DEADLINE: 2019-12-12 18:45
|
||||||
REMAINDER: 2/3
|
REMAINDER: 2/3
|
||||||
|
@ -7,8 +7,9 @@ cycles. The automaton alphabet is the set of Polish lower-case letters
|
|||||||
(English letters plus: ą, ć, ę, ł, ń, ó, ś, ź and ż).
|
(English letters plus: ą, ć, ę, ł, ń, ó, ś, ź and ż).
|
||||||
|
|
||||||
Your program should print, on standard output, all the paths of the
|
Your program should print, on standard output, all the paths of the
|
||||||
automaton in alphabetical order. "Print a path" means print a text
|
automaton in alphabetical order (to be precise: order induced by byte
|
||||||
line containing all subsequent characters.
|
codes of strings, not according to the standard Polish order). "Print
|
||||||
|
a path" means print a text line containing all subsequent characters.
|
||||||
|
|
||||||
The program does not have to check whether the automaton is correct
|
The program does not have to check whether the automaton is correct
|
||||||
and whether it is deterministic and does not contain cycles.
|
and whether it is deterministic and does not contain cycles.
|
||||||
@ -21,6 +22,8 @@ than sum) is taken.
|
|||||||
NOTE 2. Task only for students whose student index number ("numer
|
NOTE 2. Task only for students whose student index number ("numer
|
||||||
indeksu") is divisible by 3 with a remainder of 1
|
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
|
POINTS: 14
|
||||||
DEADLINE: 2019-12-16 23:59
|
DEADLINE: 2019-12-16 23:59
|
||||||
REMAINDER: 1/3
|
REMAINDER: 1/3
|
||||||
|
@ -11,4 +11,4 @@ NOTE. In section B for points for your tasks, the maximum (rather
|
|||||||
than sum) is taken.
|
than sum) is taken.
|
||||||
|
|
||||||
POINTS: 18
|
POINTS: 18
|
||||||
DEADLINE: 2019-01-10 23:59
|
DEADLINE: 2020-01-10 23:59
|
||||||
|
9
TaskX05/Makefile
Normal file
9
TaskX05/Makefile
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
|
||||||
|
# .far to specjalny format do przechowywania spakowanych transduktorów
|
||||||
|
|
||||||
|
BINARIES += TaskX05/legiatolech.far
|
||||||
|
|
||||||
|
TaskX05/run: TaskX05/legiatolech.far
|
||||||
|
|
||||||
|
TaskX05/legiatolech.far: TaskX05/legiatolech.grm
|
||||||
|
LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/lib/fst" thraxcompiler --input_grammar=$< --output_far=$@
|
9
TaskX05/description.txt
Normal file
9
TaskX05/description.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
Write a Thrax grammar which replaces all occurrences of Polish
|
||||||
|
inflected forms of the word "Legia" ("Legia", "Legią", "Legię",
|
||||||
|
"Legii") into the corresponding forms of the word "Lech" ("Lech",
|
||||||
|
"Lechem", "Lecha", "Lecha", respectively).
|
||||||
|
|
||||||
|
The task has a solution already, do not solve it!
|
||||||
|
|
||||||
|
POINTS: 0
|
||||||
|
DEADLINE: 2020-01-30 23:00
|
42
TaskX05/legiatolech.grm
Normal file
42
TaskX05/legiatolech.grm
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
|
||||||
|
# zamiana końcówek, "i"/"ę" zgrupowane, bo zamieniamy na wspólną końcówkę
|
||||||
|
suffixes = ("a" : "") | ("i" | "ę" : "a") | ("ą" : "em");
|
||||||
|
|
||||||
|
# zamiana rdzenia
|
||||||
|
legia_to_lech_core = "Legi" : "Lech";
|
||||||
|
|
||||||
|
legia_to_lech = legia_to_lech_core suffixes;
|
||||||
|
|
||||||
|
# Wszystkie możliwe znaki, niestety nie ma (?) prostszego sposobu.
|
||||||
|
# Zauważmy, że polskie znaki diakrytyczne będą reprezentowane
|
||||||
|
# tak naprawdę jako dwuznaki, nie stanowi to jednak problemu.
|
||||||
|
allChars = Optimize[
|
||||||
|
"[1]" | "[2]" | "[3]" | "[4]" | "[5]" | "[6]" | "[7]" | "[8]" | "[9]" | "[10]" |
|
||||||
|
"[11]" | "[12]" | "[13]" | "[14]" | "[15]" | "[16]" | "[17]" | "[18]" | "[19]" | "[20]" |
|
||||||
|
"[21]" | "[22]" | "[23]" | "[24]" | "[25]" | "[26]" | "[27]" | "[28]" | "[29]" | "[30]" |
|
||||||
|
"[31]" | "[32]" | "[33]" | "[34]" | "[35]" | "[36]" | "[37]" | "[38]" | "[39]" | "[40]" |
|
||||||
|
"[41]" | "[42]" | "[43]" | "[44]" | "[45]" | "[46]" | "[47]" | "[48]" | "[49]" | "[50]" |
|
||||||
|
"[51]" | "[52]" | "[53]" | "[54]" | "[55]" | "[56]" | "[57]" | "[58]" | "[59]" | "[60]" |
|
||||||
|
"[61]" | "[62]" | "[63]" | "[64]" | "[65]" | "[66]" | "[67]" | "[68]" | "[69]" | "[70]" |
|
||||||
|
"[71]" | "[72]" | "[73]" | "[74]" | "[75]" | "[76]" | "[77]" | "[78]" | "[79]" | "[80]" |
|
||||||
|
"[81]" | "[82]" | "[83]" | "[84]" | "[85]" | "[86]" | "[87]" | "[88]" | "[89]" | "[90]" |
|
||||||
|
"[91]" | "[92]" | "[93]" | "[94]" | "[95]" | "[96]" | "[97]" | "[98]" | "[99]" | "[100]" |
|
||||||
|
"[101]" | "[102]" | "[103]" | "[104]" | "[105]" | "[106]" | "[107]" | "[108]" | "[109]" | "[110]" |
|
||||||
|
"[111]" | "[112]" | "[113]" | "[114]" | "[115]" | "[116]" | "[117]" | "[118]" | "[119]" | "[120]" |
|
||||||
|
"[121]" | "[122]" | "[123]" | "[124]" | "[125]" | "[126]" | "[127]" | "[128]" | "[129]" | "[130]" |
|
||||||
|
"[131]" | "[132]" | "[133]" | "[134]" | "[135]" | "[136]" | "[137]" | "[138]" | "[139]" | "[140]" |
|
||||||
|
"[141]" | "[142]" | "[143]" | "[144]" | "[145]" | "[146]" | "[147]" | "[148]" | "[149]" | "[150]" |
|
||||||
|
"[151]" | "[152]" | "[153]" | "[154]" | "[155]" | "[156]" | "[157]" | "[158]" | "[159]" | "[160]" |
|
||||||
|
"[161]" | "[162]" | "[163]" | "[164]" | "[165]" | "[166]" | "[167]" | "[168]" | "[169]" | "[170]" |
|
||||||
|
"[171]" | "[172]" | "[173]" | "[174]" | "[175]" | "[176]" | "[177]" | "[178]" | "[179]" | "[180]" |
|
||||||
|
"[181]" | "[182]" | "[183]" | "[184]" | "[185]" | "[186]" | "[187]" | "[188]" | "[189]" | "[190]" |
|
||||||
|
"[191]" | "[192]" | "[193]" | "[194]" | "[195]" | "[196]" | "[197]" | "[198]" | "[199]" | "[200]" |
|
||||||
|
"[201]" | "[202]" | "[203]" | "[204]" | "[205]" | "[206]" | "[207]" | "[208]" | "[209]" | "[210]" |
|
||||||
|
"[211]" | "[212]" | "[213]" | "[214]" | "[215]" | "[216]" | "[217]" | "[218]" | "[219]" | "[220]" |
|
||||||
|
"[221]" | "[222]" | "[223]" | "[224]" | "[225]" | "[226]" | "[227]" | "[228]" | "[229]" | "[230]" |
|
||||||
|
"[231]" | "[232]" | "[233]" | "[234]" | "[235]" | "[236]" | "[237]" | "[238]" | "[239]" | "[240]" |
|
||||||
|
"[241]" | "[242]" | "[243]" | "[244]" | "[245]" | "[246]" | "[247]" | "[248]" | "[249]" | "[250]" |
|
||||||
|
"[251]" | "[252]" | "[253]" | "[254]" | "[255]"
|
||||||
|
];
|
||||||
|
|
||||||
|
export PROCESS = Optimize[CDRewrite[legia_to_lech, "", "", allChars*]];
|
3
TaskX05/run
Executable file
3
TaskX05/run
Executable file
@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/lib/fst" thraxrewrite-tester --far=TaskX05/legiatolech.far --rules=PROCESS
|
6
TaskX05/test.exp
Normal file
6
TaskX05/test.exp
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
Input string: Output string: Lech Warszawa
|
||||||
|
Input string: Output string: Górnik gra z Lechem
|
||||||
|
Input string: Output string: Lech Lecha Lecha Lechem
|
||||||
|
Input string: Output string: Lechxxxxx
|
||||||
|
Input string: Output string: tu nic nie ma do zamiany
|
||||||
|
Input string:
|
5
TaskX05/test.in
Normal file
5
TaskX05/test.in
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
Legia Warszawa
|
||||||
|
Górnik gra z Legią
|
||||||
|
Legia Legii Legię Legią
|
||||||
|
Legiaxxxxx
|
||||||
|
tu nic nie ma do zamiany
|
8
TaskX06/description.txt
Normal file
8
TaskX06/description.txt
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
Write a Thrax grammar which replaces all 0s to 1s and 1s to 0s (other
|
||||||
|
digits should not be changed).
|
||||||
|
|
||||||
|
You can assume that only string composed of digits are given on the
|
||||||
|
input.
|
||||||
|
|
||||||
|
POINTS: 1
|
||||||
|
DEADLINE: 2019-12-13 23:59
|
6
TaskX06/test.exp
Normal file
6
TaskX06/test.exp
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
Input string: Output string: 0023410
|
||||||
|
Input string: Output string: 0101010
|
||||||
|
Input string: Output string: 9999999
|
||||||
|
Input string: Output string: 888088888888888
|
||||||
|
Input string: Output string: 111
|
||||||
|
Input string:
|
5
TaskX06/test.in
Normal file
5
TaskX06/test.in
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
1123401
|
||||||
|
1010101
|
||||||
|
9999999
|
||||||
|
888188888888888
|
||||||
|
000
|
2
blend.sh
2
blend.sh
@ -19,7 +19,7 @@ cp "${PREFIX}/count-points.pl" arena/
|
|||||||
cp "${PREFIX}/overrides.txt" arena/
|
cp "${PREFIX}/overrides.txt" arena/
|
||||||
cp "${PREFIX}/Makefile" arena/
|
cp "${PREFIX}/Makefile" arena/
|
||||||
|
|
||||||
for TX in X01 X02 X03 X04 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 B00 B01 B02 B03 B04 B05 B06 E01 E02 E03 E04 # X05 X06 X07 X08 X09 X10 B03 B04 X10
|
||||||
do
|
do
|
||||||
mkdir -p arena/Task$TX
|
mkdir -p arena/Task$TX
|
||||||
done
|
done
|
||||||
|
@ -0,0 +1 @@
|
|||||||
|
434739 A44 4 manually
|
Loading…
Reference in New Issue
Block a user