Bu, Brain-Flak'ın doğum gününe götüren bir dizi zorluktan biriydi. Daha fazlasını burada bulabilirsiniz .
Meydan okuma
Bu zorluk için amacınız, tamamen uyumlu bir ()[]{}<>
parantez dizisindeki ilk eşleşen parantez çiftini bulmak olacaktır . DJMcMayhem'in tam olarak eşleşen bir dizge tanımını ödünç almak için :
Bu meydan okuma amacıyla bir "parantez" bu karakterlerin herhangi biridir:
()[]{}<>
.Açma ve kapama parantezleri doğru sıradaysa ve içlerinde karakterleri yoksa, bir parantez bir çift parantez olarak kabul edilir.
() []{}
Veya içindeki her alt öğe de eşleşirse.
[()()()()] {<[]>} (()())
Alt öğeler ayrıca birkaç kat derinlikte yuvalanabilir.
[(){<><>[()]}<>()] <[{((()))}]>
Bir dizginin, yalnızca her bir çift dirsek doğru açma ve kapama dirseğine doğru sırada sahip olması durumunda ve "Tamamen eşleşir" olarak kabul edilir.
Giriş
Giriş, yalnızca karakter içeren tek bir boş olmayan dizgiden veya karakter dizisinden oluşacak ()[]{}<>
ve tam olarak eşleştirilmesi garanti edilir. Giriş / çıkış varsayılanlarımıza uygun olan herhangi bir makul şekilde giriş yapabilirsiniz .
Çıktı
Programınızın veya fonksiyonunuzun çıktısı, ilkini kapatan braketin indeksi olacaktır. Çıktı ya endekslenmiş ya da indekslenmiş olmalıdır . Yine, çıktı bizim g / Ç varsayılanlarımıza uygun herhangi bir makul şekilde olabilir .0
1
Test Kılıfları
Input 0-indexed 1-indexed
() 1 2
(<>) 3 4
<[]{<>}> 7 8
{}{}{}{} 1 2
[[]<>[]] 7 8
Bu kod golf , en az bayt kazanıyor!