Sevgili dahimizden esinlenerek ve anısına,
HUZUR İÇİNDE YATSIN
O icat ve uygulanan dfns - onun şaheserinizi ve meydan konusunu.
İlgilenenler için: John ile en son tam dfns belgeleri ve videoları .
Görev
Bir ASCII kaynak kodu verildiğinde, aşağıdaki dört kategoriden hangisine ait olduğunu yanıtlayın:
Çift dop
Monadik dop
dfn
Diğer
Dört tutarlı değer döndürebilirsiniz, ancak açık değilse lütfen eşlemenizi belirtin.
ayrıntılar
Kaynak kodun her zaman bir açılış süslü ayraçla başladığını {
ve bir kapanış süslü ayraçla sona erdiğini varsayabilirsiniz.}
.
Yinelemeli olarak iç içe geçmiş ayraçlar oluşabilir (örn. {{{}}}
), Ancak 1-3 kategorilerinde hiçbir zaman küme iç içe geçme derinliği 1'in altına düşemez (bu {}{}
nedenle "Diğer" dir) ve tüm ayraçlar dengelenmelidir (yani{{}
"Diğer" de).
Bir satırda aşağıdaki bağlamlardaki karakterler yok sayılır:
Sağında
#
(yorum):significant#ignored
Tek tırnak içine alınmış
'
…'
(yani bir dizede):significant'ignored'significant
(Bu durum aşağıdakiler için#
de geçerlidir :'#'significant
)Eşleştirilmemiş bir teklifin sağında (
'
soldan tırnak işaretleri eşleme):significant'ignored
Kıvırcık ayraç birinci düzeyde (yani iç içe parantezler hariç):
Çift dops kesintisiz ifadeyi içerir
ww
Monadik doplar içermez
ww
, ancak içeriraa
Dfns içerirler ne
ww
deaa
Test senaryoları
Çift dops
{ww}
{
www
}
{
''ww'
}
{aa
ww}
{'#''#'ww?aa}
Monadik dops
{aa}
{aaaa}
{aa{ww}'ww'}
{w#w'
aa'
}
{aaw*w}
{w'\'aa\''}
Dfns
{}
{a a}
{aA}
{
{aa}
}
{w
w''w#
w}
{{
}}
{w\'aa\'}
Diğer
{}{}
{{}
{}}
{ww}}
{}
{}
{ww}{}
{#}
{'
'}
{'#\'ww?aa'}
-> diğer?)
''
(dizede kesme işareti, bu zorluk için iki bitişik dizge olarak da ayrıştırılabilir)?
'abc''def'
bu meydan okuma için bir veya iki dize olarak ayrıştırılmasının önemi yoktur .