ルール
この課題では、「引用」の定義を少し再定義します。
引用符(別名quotes)は、さまざまな書記体系でペアで使用される同一の文字で、直接のスピーチ、引用、またはフレーズを引き立たせます。このペアは、開始引用符と終了引用符で構成され、同じ文字(大文字と小文字が区別されます)です。
互いに重なる引用符ペアがある場合、
- ペアが別のペアをネストしている場合、両方のペアはまだ有効です。
- ペアが別のペアをネストしていない場合、最初の開始ペアは有効なままです。もう一方はペアとは見なされなくなりました。
引用符で囲まれた文字(引用符のペアの長さ)をカウントする場合、
- 引用自体は考慮されません。
- 各ペアの長さは独立してカウントされます。重複は他に影響しません。
ゴール
あなたの目標は、すべての有効な引用符の全長を印刷することです。これはコードゴルフであるため、バイト数が最も少ないコードが勝ちます。
例
Legend:
<foo>: Valid quotes
^ : Cannot be paired character
Input : ABCDDCBA
`A` (6): <BCDDCB>
`B` (4): <CDDC>
`C` (2): <DD>
`D` (0): <>
Output : 12
Input : ABCDABCD
`A` (3): <BCD>
`B` (0): ^ ^
`C` (0): ^ ^
`D` (0): ^ ^
Output : 3
Input : AABBBBAAAABA
`A` (0): <> <><> ^
`B` (0): <><> ^
Output : 0
Input : ABCDE
Output : 0
Input : Print the total length of all "quoted" characters
`r` (40): <int the total length of all "quoted" cha>
`n` (14): <t the total le>
`t` (15): < > <o> <h of all "quo>
` ` (7): ^ <total> <of> ^ ^
`h` (0): ^ ^ ^
`e` (8): < total l> ^ ^
`o` (0): ^ ^ ^
`a` (0): ^ ^ ^ ^
`l` (0): ^ ^ <>
`"` (0): ^ ^
`c` (0): ^ ^
Output : 84
Input : Peter Piper picked a peck of pickled peppers
`P` (5): <eter >
`e` (9): <t> ^ <d a p> <d p> ^
`r` (0): ^ ^
` ` (3): ^ ^ <a> <of> ^
`i` (5): <per p>
`p` (3): <er > ^ ^ ^ <>
`c` (8): <ked a pe> ^
`k` (7): ^ < of pic>
`d` (0): ^ ^
Output : 40
Input : https://www.youtube.com/watch?v=dQw4w9WgXcQ
`h` (27): <ttps://www.youtube.com/watc>
`t` (0): <> ^ ^
`/` (0): <> ^
`w` (14): <><.youtube.com/> <4>
`.` (7): <youtube>
`o` (0): ^ ^
`u` (1): <t>
`c` (0): ^ ^ ^
`Q` (8): <w4w9WgXc>
Output : 57